FFMpeg を使用して MKV ビデオ形式を生成しようとしています。デフォルトでは、FFMpeg は h264 と libvorbis を使用します。しかし、ffmpeg ソース ファイル フォルダーの下にある doc/examples/muxing.c を使用すると、常にエラーが発生します。
[libvorbis @ 002e52a0] Specified sample format s16 is invalid or not supported
Could not open audio codec: Error number -22 occurred
Zeranoe FFmpegを使用したところ、このエラーが表示されました。また、MinGW の下でソースから ffmpeg をコンパイルしようとしました。また、構成に従って libvorbis を有効にしました。
$ ./configure --prefix=/mingw --enable-libvpx --enable-libvorbis --enable-shared --enable-static
作成する前に、libvorbis、libogg、yasm などもインストールしますが、エラーはまだ残っています。
ffmpeg.exe を使用してビデオを webm 形式に変換すると、動作します。コマンドは次のようなものです。
ffmpeg -i test.h264 -vcodec libvpx -acodec libvorbis output.webm
生成された output.webm は、Firefox などで再生できます。したがって、コンパイルされた ffmpeg ライブラリは問題ないと思います。しかし、muxing.c コードで webm ファイルを生成できないのはなぜですか?