0

私はWindowsMediaFormat 11 SDKを使用して、圧縮されたサンプルの読み取りと書き込みによってビデオファイルをコピーしています(つまり、デコード/エンコードは行われず、生のサンプルをコピーするだけです)。

私の問題は、ライターがデータパケットをドロップしていることです。元のファイルにあったすべてのデータパケットを保持したいので、これは最適ではありません。入力ファイルでビットレートが間違って定義されている場合、問題は特に深刻です(結局のところ、あらゆる種類の奇妙なファイルが浮かんでいます)。

パケットドロップを完全に無効にするために使用できる構成設定はありますか?私は今のところこのようなものを見つけていません。非常に高いビットレートとバッファウィンドウを設定しようとしましたが、ライタープロファイルにストリームを追加するときに情報のないエラーが発生しました。

現時点での私の唯一の選択肢は、すべてのASF解析コードを自分で再実装して、実際に低レベルのコピー操作を実行することだと思われます。ただし、これはかなりの無駄な時間になります。

私が見逃したものはありますか?どういうわけか、ライターにパケットをドロップしないように指示できますか?

編集:ビデオがWMV2(Windows Media Video 8)コーデックを使用している場合、問題は最も深刻であるように見えます。VC-1を使用すると、出力ビデオは正常です(または、少なくとも正常に近い場合、ファイルの内容を詳細に確認していませんが、視覚的には問題なく見えました)。おそらく、WMV2の実装はメディアフォーマットSDKでどういうわけか壊れていますか?さて、私は今のところWMV2サポートなしで生きなければなりません。

4

0 に答える 0