オーディオをPNGからstdoutに変換するときにffmpegの問題が発生するが、ファイルには問題ない

オーディオをPNGからstdoutに変換するときにffmpegの問題が発生するが、ファイルには問題ない

音声を画像(振幅スペクトル)に変換してそのデータを標準出力に送信しようとすると(スクリプトに埋め込まれているため、ディスクに書き込む必要はありません)、失敗します。

ffmpeg -y -f alaw -ar 8000 -i 282578800275916.8000-audio-pcma -frames:v 1 -filter_complex aformat=channel_layouts=mono,compand,showwavespic=s=183322x15 -f png -  2>> ffmpegDrawErr.log

ログに記録されました: 要求された出力形式「png」は適切な出力形式ではありません

しかし、ファイルに直接実行すると

ffmpeg -y -f alaw -ar 8000 -i 282578800275916.8000-audio-pcma -frames:v 1 -filter_complex aformat=channel_layouts=mono,compand,showwavespic=s=183322x15 out.png  2>> ffmpegDrawErr.log

完璧に動作します

答え1

画像形式については、汎用のマルチプレクサー セット (image2 および image2pipe) があります。形式は、コーデック オプションを使用して設定されます。

ffmpeg -y -f alaw -ar 8000 -i 282578800275916.8000-audio-pcma -frames:v 1 -filter_complex aformat=channel_layouts=mono,compand,showwavespic=s=183322x15 -c:v png -f image2pipe - 2>> ffmpegDrawErr.log

関連情報