4

このFFMPEGチュートリアルの例から、誰でも読み取り可能なH264ファイルを作成できますか?私が変更したのは、350行目の出力形式だけです。

avformat_alloc_output_context2(&oc, NULL, "h264", filename);

FFMPEG 1.0.1 + libx64 v129で実行すると.3gp、ほとんどのプレーヤー(VLCを含む)が読み取れない6MBのファイルが生成されます。ロードすると、すべてのフレームが含まれていることがわかり、デコードして正常に表示できますが、何らかの理由でほとんどのプレーヤーが開くことができません。

誰かがもっと成功していますか?

4

1 に答える 1

3

出力形式は、使用されるコーデックではなく、コンテナを参照する必要があります。あなたがしていることは、(コマンドラインで)拡張子が「.h264」のファイル名にエンコードすることと同じです。これにより、生のH.264ファイル(コンテナーなし)が生成されます。多くのプレイヤーはこれを処理できるはずですが、それを精査できないかもしれません。彼らはそれが何であるかを理解するために拡張機能に依存するでしょう。.3gp拡張子で保存されたrawファイルがある場合、それは失敗します。フォーマットを「.3gp」以上に設定してみてください。フォーマットもNULLのままにして、ffmpegにファイル名から推測させてください:)

于 2013-01-07T15:27:08.280 に答える