2012-01-12 6 views
1

私はxuggleのプライマーで、さまざまなフォーマット/品質のビデオをトランスコードしたいと思います。初心者の方はXuggle MediaToolを使いたいです。私は効率的にそれを行う必要があるので、私は別のスレッドで各ターゲット形式を処理したい。この場合の正しい同時実行パターンは何ですか?xuggle同時トランスコード

私はfile.aviを持っていて、.flv.movにトランスコードしたいとします。

IMediaReader reader = ToolFactory.makeReader("file.avi"); 
reader.addListener(ToolFactory.makeWriter("file.flv", reader)); 
reader.addListener(ToolFactory.makeWriter("file.mov", reader)); 
while (reader.readPacket() == null){} 

それとも、私は別のスレッドで各フォーマットの変換を開始する必要があります:私はxuggleは、以下の場合の各ライターのためのスレッドを開始した場合に興味?

(からコード:MediaTool Introduction

答えて

4

Xuggleは、任意のスレッド(1)を起動しない、それがスレッドを管理するのはあなた次第です。さらに、Xuggleオブジェクトはスレッドセーフではありません。あなた自身でアクセスを制御する必要があります。

ただし、複数のスレッドを追加する前に、パフォーマンスを測定する価値があります。マルチコアマシン上の複数のスレッドでエンコードが高速化されますが、その利点は必要ありません。

アート

(1)完全に真が、あなたのケースではありませんXuggleは、任意のスレッドを起動しません。 Xuggle(バージョン4.0以降)は、たいていメモリクリーンアップに使用する他のスレッドを開始します。

+0

こんにちはXuggle、私は持っている迅速かつ(緊急の)質問にお答えできますか? Xuggleを使用して.movファイルと.mkvファイルを他のフォーマット(例:.flv)に変換することは可能ですか? –