【FFmpeg】フォルダ内の複数の ts ファイル(動画ファイル)を、コマンド一発で、flac や wav に変換する。

7965 ワード

この記事は何?

フォルダ内にある複数のファイルをコマンド一発で、flac や wav に変換する方法です。
今回は、ts ファイルを一括で変換します。
例えば、「一括して、flacに変換」の場合、以下のキャプチャのようなイメージです。

before
コマンド実行前

after
コマンド実行後 flac ファイルが生成される。

技術的な要素

技術的な要素としては、以下があります。

  • シェルスクリプトで複数のファイルに対して、for 文で同じ処理を行う
  • FFmpeg でのメディアの変換

結論

最終的なコマンドを先に載せます。

一括してflacに変換。

Terminal
for f in *.ts; do ffmpeg -i "$f" -vn -acodec flac -f flac "${f%.ts}.flac"; done

一括してwavに変換。

※ サンプルレート 48.0kHz、サンプルビット 16bit の wav ファイルに変換することを想定。

Terminal
for f in *.ts; do ffmpeg -i "$f" -vn -acodec copy -ac 2 -ar 48000 -acodec pcm_s16le "${f%.ts}.wav"; done

解説

シェルスクリプトの for 文

for 変数 in 値リスト
do
  処理
done

コードの引用: