JMF は古く、多くのコーデックを適切にサポートしていません。最近はバックグラウンドで FFMPEG を使ってやっていますが、ネイティブの Java ソリューションがあればそれに切り替えたいのですが、メディア操作機能を備えた現在のオープン ソース Java プロジェクトを知っている人はいますか?
2 に答える
100%ネイティブではありませんが、Xugglerを使用することもできます。これは、Java内でFFmpegを実行するオープンソース(LGPL)ラッパーであるため、シェルアウトする必要はなく、現在すでに250人を超える開発者によって使用されています。
それはあなたが何をしたいかによります。
あなたはffmpegを使用しているので、ビデオをエンコードしていると思います。私は、Java が短期的または中期的にそのような作業を「ネイティブ」に行うことに悲観的です。これは、多くの Java 哲学/荷物に反するものです。
とはいえ、 Java 7では、コーデックは一般的にアクセスしやすくなり、より利用しやすくなり、実際のアプリケーションに現れ始めるはずです。残念ながら、私が読んだ限りでは、再生と GUI に重点が置かれているようです。
ビデオやその他のメディアをエンコードするために、Java から ffmpeg へのシェルアウトを割り当てます。事実、 ffmpeg は、プロプライエタリまたはオープン ソースのビデオをプログラムでエンコードするための最高のツールの 1 つです。近い将来、その状態が続くと私は予測しています。
ffmpeg が機能しない場合は、Quicktime for Javaを調査することをお勧めします。私は個人的にそれを深く見ていませんが、それは「大きい」ようです. QuickTime X のリリース (2009 年秋) の時点で廃止されたようです。
QuickTime for Java は、Java 開発者がストリーミング オーディオやビデオを含むマルチメディアをアプリケーションやアプレットに構築できるようにする一連のクロスプラットフォーム API を提供します。