Конвертировать несколько. WAV в. Caf - PullRequest
9 голосов
/ 07 января 2012

Я создаю приложение для iPhone, и у меня есть тонна .wav файлов, которые нужно преобразовать в .caf

. Я могу использовать это для каждого файла:

afconvert -f caff -d LEI8@22050 walking.wav walking.caf

Но это заняло бы много времени, поэтому я пытаюсь преобразовать все файлы с помощью:

for i in *.wav; do afconvert -f -caff -d LEI16@44100 -c 1 $i ${i%.wav}.caf; done

Но я получаю эту ошибку:

Error: ExtAudioFileCreateWithURL failed ('typ?')

РЕДАКТИРОВАТЬ: Ошибка на самом деле произойдет, потому чтоопечатка в цикле for, показанном выше.Это должно быть caff, а не -caff.Правильный фрагмент кода будет тогда.

for i in *.wav; do afconvert -f caff -d LEI16@44100 -c 1 $i ${i%.wav}.caf; done

Могут быть и другие проблемы, и принятый ответ действителен, просто хотел помочь разобраться с вопросом./ EDIT

Ответы [ 2 ]

16 голосов
/ 09 января 2012

Это скрипт, который я использовал, слегка модифицированный из другого источника, который любезно заслуживает всяческих похвал:

##
## Shell script to batch convert all files in a directory to caf sound format for iPhone
## Place this shell script a directory with sound files and run it: 'sh afconvert_wavtocaf.sh'
## Any comments to 'support@ezone.com'
##

for f in *.wav; do
if  [ "$f" != "afconvert_wavtocaf.sh" ]
then
 afconvert -f caff -d ima4 $f
 echo "$f converted"
fi
done

Сохраните его в файле с именем 'afconvert_wavtocaf.sh'.Посмотрим, поможет ли это.

4 голосов
/ 07 января 2012

Попробуйте добавить echo $i; перед afconvert в вашем скрипте, чтобы получить имя звукового файла, на котором ваша команда не выполнена.Затем попытайтесь преобразовать его вручную, возможно, он тоже не удастся.

Я подозреваю, что один из ваших файлов не является действительным wav-файлом, но в формате, который не распознается afconvert.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...