Media Foundation:コンテナなしでH264フレームをデコードして表示する
-
29-10-2019 - |
質問
シナリオは次のとおりです。私のWindowsクライアントアプリは、カスタムの方法(独自のプロトコル)で、コンテナーなしでネットワークソースからH264エンコードされたフレームを取得します。フレームのフォーマットは既知です。フレームをデコードしてビデオを表示する必要があります。HDストリーミング中は再生が完璧である必要がありますが、他のシナリオでは低遅延のオプションがあります。
現在、ffmpegのlibavcodecを使用してフレームをデコードし、StretchBltを使用して手動で画面に表示しています。Media Foundationへの移行を検討していますが、私にはわかりません。コンテナを使用しないソースを持つことは可能ですか?もしそうなら、私はカスタムのものを作成する必要がありますか?
MediaFoundationを使用する代わりの方法も歓迎します。私が現在使用している方法の主な問題は、特にHDビデオのパフォーマンスが十分でないことです。
解決
特に必要なジェネラコディセタグコードAPIや、ジェネラコディセタグコードAPIについて言及されていないので、次の方法で実行できるジェネラコディセタグコードをお勧めします。
- カスタムソース。
を参照してください。プッシュソースフィルターのサンプル - H.264デコーダー、Windows 7(Media Foundationと同様)またはサードパーティ(いくつかから選択)を搭載
- EVR(Media Foundationと共有)または古いバージョンなどのビデオレンダラー
所属していません StackOverflow