核心をつかむために、最初のコマンドは機能するのに、2 番目のコマンドは機能しないのはなぜですか。これらは、内容が異なるわずかに異なるサイズのファイルを生成します。
ffmpeg -i test.wav -f ogg -acodec libvorbis test.a.ogg
ffmpeg -i test.wav -f ogg -acodec libvorbis - > test.b.ogg
test.a.ogg は正常に再生され、問題はありません。test.b.ogg はソース オーディオの途中から開始し、オーディオに停止やギャップがあります。また、トラックの長さは報告されません。
作成中のプログラムのソース ファイルをオンザフライで ogg にトランスコードしたいのですが、ffmpeg から stdout を自分のプログラムにパイプしようとしています。トランスコーディングはオンデマンドで行われるはずなので、結果を中間ファイルに入れるとパフォーマンスが低下します。