1

ディレクトリ内で.wavファイルをmp3(ラメV0プリセット付き)にトランスコードするbashスクリプトを作成しようとしています。これが私がこれまでに持っているものです

#!/bin/bash
#
for abc in *.wav; do
  name=${abc%.*}
  echo "$name"
  ffmpeg -i "$abc" -ac 2 -f wav - | lame -V 0 - "$name.mp3"
done
#

最初のdo行で拡張子が切り取られているため、後でファイル名を使用できます。

単一のファイルで ffmpeg コマンドをテストしましたが、それをforループに含めると、(最後のトラックで) 次のエラーが発生します。

10 Artist - track
lame: excess arg Artist
ffmpeg version 0.8.6-4:0.8.6-0ubuntu0.12.04.1, Copyright (c) 2000-2013 the Libav developers
  built on Apr  2 2013 17:00:59 with gcc 4.6.3
10: No such file or directory

lame行に余分な引数がある理由、または ffmpeg が「10」という名前のファイルのみを参照している理由がわかりません。足りないものはありますか?

助けてくれてありがとう

4

0 に答える 0