どのように私はカフェにwavファイルからディレクトリ内のすべてのファイルを変換するafconvertを使用していますか?

StackOverflow https://stackoverflow.com/questions/1271354

質問

AudioServicesCreateSystemSoundID()はそれらのいくつかのエラーを返します(すべてではない)ので、

私は、私がカフェに変換する必要があり、約50 wavファイルとディレクトリを持っています。

ここで私は、単一のファイルのために首尾よく使用していたコマンドの例を示します。

afconvert -f caff -d LEI16@44100 -c 1 whistle.wav whistle.caf

どのように私はすぐにこれを行うのですか? - ない1対1の各ファイルの

役に立ちましたか?

解決

Windowsでは、%~ni構文を使用します。

for %i in (*.wav) do afconvert -f caff -d LEI16@44100 -c 1 %i %~ni.caf

他のヒント

bashのための同様のアプローチ:for i in *.wav; do afconvert -f caff -d LEI16@44100 -c 1 $i ${i%.wav}.caf; done

これを見つけました

##
## 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 converttocaf.sh'
## Any comments to 'support@ezone.com'
##

for f in *; do
    if  [ "$f" != "converttocaf.sh" ]
    then
        /usr/bin/afconvert -f caff -d LEI16 "$f"
        echo "$f converted"
    fi
done

あなたが変換し、ターミナルから実行したいファイルのディレクトリに置き、「converttocaf.sh」と呼ばれるテキストファイルとして保存し、その後aconvertオプションをカスタマイズします。

これは、自分の名前にスペースを持つファイルで動作します。

for file in *.wav; do afconvert -f caff -d LEI16@44100 -c 1 "$file"; done

done直後にReturnキーを押します。

シンプル:)

OSXを使用して、私はAutomatorを持つ小さなアプリケーションを作成したターミナルスクリプトのビットを恐れているされている人々のために、このアプリケーションは、あなたが選択したファイルを変換します。

ダウンロードここ

あなたがLinux上でスペースを含むファイル名を扱っている場合は、次のコードを試してみます:

SAVEIFS=$IFS 
IFS=$(echo -en "\n\b"); for i in *.wav; do afconvert -f caff -d LEI16@44100 -c 1 $i ${i%.wav}.caf; done

OSX上のPythonスクリプト。 .cafのデフォルトのデータ形式はima4です。デフォルトのディレクトリは

'.'です

でそれを埋める、それが実行可能にする、あなたのパスに入れて、wav2caf.pyというファイルを作成します:

#!/usr/bin/python
# -*- coding: utf-8 -*-
import sys
import os
import argparse
import glob

def main():
    # handle command line args
    parser = argparse.ArgumentParser(description='A program that converts .wav to .caf files.', formatter_class=argparse.RawTextHelpFormatter)
    parser.add_help = True
    parser.add_argument('-f', '--folder', dest='folder', type=str, default='.', help='folder of files to convert')
    parser.add_argument('-d', '--data', dest='data', type=str, default='ima4', help='data format of .caf')
    args = parser.parse_args()

    # process files in folder
    os.chdir(args.folder)
    for filename in glob.glob("*.wav"):
        name, ext = os.path.splitext(filename)
        command = 'afconvert -f caff -d ' + args.data + ' ' + filename + ' ' + name + '.caf'
        os.system(command)

if __name__ == "__main__":
    main()

現在のディレクトリに.cafするすべての.WAVを変換します:

wav2caf.py

指定されたディレクトリに.cafするすべての.WAVを変換します:

wav2caf.py -f Desktop/wavs/

データ型 'AAC' で.cafするすべての.WAVを変換します:

wav2caf.py -d 'aac '
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top