2016-09-12 6 views
0

複数のユーザーが異なる種類のビデオをアップロードし、これらのビデオのフォーマットは保存しません。コーデックだけです。 ffmpegは、必要なときにビデオとオーディオのコーデックを検出し、今日まですべて良好でした。私はオーディオの正規化ステップを追加していました。どのようにffmpeg自動コーデックに基づいてコンテナ形式を選択するには? ffmpegは、指定されたフォーマットに基づいて出力オーディオコーデックを選択するようです。元の形式とコーデックをそのまま使用しても問題ありませんか?上記のコマンドについてはオリジナルフィルタを追加するときに元のフォーマットを維持するオリジナルファイルから自動検出フォーマット

ffmpeg -y -i /mnt/tmp/asjkdh39 -c:v copy -af "volume=10.7dB" /mnt/tmp/0540hsl 

、私はエラーを取得:

[NULL @ 0x9214a0] Unable to find a suitable output format for '/mnt/tmp/0540hsl' 
+0

「ffprobe file -hide_banner -show_entries format = format_name -of compact = p = 0:nk = 1 -v quiet」を実行してから '-af valueの後に-f valueを指定することができます。 .. '。ところで、ボリュームが正常化していない、そのためにdynaudnormを使用してください。 – Mulvya

+0

「dynaaudnorm」を指摘してくれてありがとう@Mulvya。私はそれを試しています。私の場合は、動画の再生時間ではなく、複数の動画に渡って音声を正規化する必要があります。そのため、私は 'volumedetect'を使って負のmax_volumeを見つけてそれをそれほど増やしています。 – cnvzmxcvmcx

+0

これ以上解決策がないので、私はそれを受け入れることができるようにあなたのコメントを回答として追加することができます。 – cnvzmxcvmcx

答えて

0

ない可能性が、せいぜい、あなたは

ffprobe file -hide_banner -show_entries format=format_name -of compact=p=0:nk=1 -v quiet 

を実行し、-af ....-f valueを供給することができます。

関連する問題