0

ビデオとオーディオのデコードでスレッドを開始し、いくつかのフレームを取得できる C++ プロジェクト用のシンプルなライブラリを見つけたいですか? サンプル コードで lib API と動作について期待することを説明しようとしています。

player = new Player("video.avi");
player->Play();   // lib start video decoding into internal hidden buffer 
                  // and audio decoder start play sound from video file
.....
buffer = new ....
player->SyncCopyCurrentFrameIntoBuffer(buffer);   // copy last decoded frame into buffer
....
play->Pause();    // lib freeze video and audio decoding

誰かが私に何かを勧めることができますか?(Winの場合)

4

2 に答える 2

1

DirectShowは、一連のフィルター (ソース、エンコーダー、デコーダー、カラー コンバーター、レンダラーなど) で構成されるメディア パイプラインを作成できる MS テクノロジです。DirectShow では、次のようなグラフを作成できます。

Video source -> Sample grabber filter -> Video renderer

その後、グラフを再生および一時停止できます。サンプル グラバーフィルターを使用すると、各サンプルがメディア パイプラインを通過するときにトリガーされるコールバックを構成できます。

DirectShow は習得が容易なフレームワークではないことに注意してください。ただし、達成したいタスクは、コツをつかめば非常に簡単に実行できます。DirectShow には、C++ と一部の COM に関する十分な知識が必要です (MSDN のドキュメントで説明されています)。主なサポートは、非常に広範な MSDN ドキュメントと MS DirectShow フォーラムによるものです。

于 2011-11-09T19:32:29.683 に答える
0

たぶん、libavcodec(またはより一般的にはffmpegパッケージ)を見てみたいですか?http://ffmpeg.orgの詳細

于 2011-11-09T15:42:56.347 に答える