10

追跡結果を再生する必要があるオブジェクト追跡プログラムを作成したいと考えています。gstreamer は優れたマルチメディア フレームワークであるため、デモ プログラムで使用したいと考えています。しかし、ビデオ表示を詳細に実装する方法がわかりません。誰でも助けることができますか?

Avidemux プラグインを使用すると、オーディオとビデオの部分を avi ファイルから分離できますが、次に何をすればよいでしょうか?

非圧縮の avi ファイルを開く場合、avidemux プラグインの出力パッドをビデオ シンクに直接リンクすると機能しますか?

ところで、効率面でどちらのビデオシンクが優れているでしょうか? プラグイン リファレンスを調べたところ、多くのビデオ シンクが見つかりました: glimagesink、osxvideosink、sdlvideosink、ximagesink、xvimagesink、dfbvideosink、fbdevsink、gconfvideosink 私のプラットフォームはubuntu 9.04です。

ティア~

4

2 に答える 2

13

Nick Hadded が示唆するように、playbin または decodebin は開始するのに適した場所です。実験のために、gst-launch を使用することをお勧めします。

gst-launch filesrc location=video.avi !
decodebin2 name=dec ! queue ! ffmpegcolorspace ! autovideosink
dec. ! queue ! audioconvert ! audioresample ! autoaudiosink

autoaudiosink と autovideosink は通常は機能するため、使用しています。機能するパイプラインが見つかったら、同じパイプラインをコードで構築してみてください。オーディオが必要ない場合は、パイプラインのその部分をスキップしてください。ビデオ表示の場合、最善の策は xvimagesink です (少なくとも UNIX では)。

于 2009-10-17T19:03:15.773 に答える
4

プレイビン (リファレンス ページドキュメント) またはデコード ビン (リファレンス ページドキュメント) を使用することをお勧めします。これらにより、さまざまな種類のビデオ ファイル用に gstreamer パイプラインを作成するプロセスが大幅に簡素化されます。それぞれで、 GstXOverlayインターフェイスを使用してビデオ シンクを使用できます。詳細については、アプリケーションへのビデオ ウィンドウの埋め込みを参照してください。

于 2009-10-16T14:07:52.810 に答える