ffmpegを使用してオーディオを複数の形式にバッチ変換(デコード)

ffmpegを使用してオーディオを複数の形式にバッチ変換(デコード)

CD品質(16ビット44100Hz)のウェーブファイルを含むディレクトリがあります。

ffmpegを使用してFLAC、OGG、MP3などの他の形式にバッチデコードするにはどうすればよいですか?


修正する:@StephenHarrisが提案したステップバイステップのコマンドは次のとおりです。

ffmpeg -i input.wav output.ogg
ffmpeg -i input.wav output.mp3
ffmpeg -i input.wav output.flac

答え1

ffmpegさまざまな出力形式を受け入れます。入力file.formatを設定し-i、出力file.formatを設定します。ffmpeg -i input.wav output.ogg output.mp3 output.flac


バッチ変換:

シンプルな1つのライナーで各フォーマット別のフォルダ:

mkdir mp3 ogg flac; for i in *.wav; do ffmpeg -i "$i" -b:a 320000 "./mp3/${i%.*}.mp3" -b:a 320000 "./ogg/${i%.*}.ogg" "./flac/${i%.*}.flac"; done

すべてをフォルダにデコードします。

for i in *.wav; do ffmpeg -i "$i" -b:a 320000 "${i%.*}.mp3" -b:a 320000 "${i%.*}.ogg" "${i%.*}.flac"; done

-b:a 320000ビットレートを設定、デコード、mp3調整oggできます(ビットレートはビット/秒単位で測定されるため320kbit/s同じです320000)。


ありがとうhttps://stackoverflow.com/a/33766147~のためパラメータ拡張

答え2

GNU Parallelを使用すると、次のことを実行できます。

parallel ffmpeg -i {1} {1.}.{2} ::: *.wav ::: ogg mp3 flac

{1} = replacement string for first input source
{1.} = replacement string for first input source with extension removed
{2} = replacement string for second input source
::: *.wav = input source 1
::: ogg mp3 flac = input source 2

これにより、すべてのコアが使用されます。

関連情報