Macでコマンドラインで一括オーディオフォーマット変換 afconvert

公開日: : 最終更新日:2018/04/08 iPad, iPhone, MacBook, , ,

iOSアプリの場合、効果音のフォーマットは caf がよいらしい。
ダウンロードしたファイルはcaf でないことの方が多いので、その場合 MacOS上で afconvert で変換する。
afconvert の仕様を忘れて毎回調べてしまうのでメモしてみる。

ファイルをリトルエンディアン/16ビット/44.1kHz/モノラル のIMA4のCAFファイルにしたい場合。
エンディアンIビット数@サンプリングレートの形式で指定する。I(大文字のアイ)をつけるのをよく忘れてしまう。

<br />
 afconvert -f caff -d ima4 -d LEI16@44100 -c 1 in.aif out.caf<br />
 

cocosdenshion:faq – cocos2d for iPhone によると、CDSoundEngine で使うなら 16bit mono wave file か IMA4 がよいとのこと。

afconvert -hf すると、-d と -f に選択できる文字列を調べることができる。

Audio file and data formats:
    '3gpp' = 3GP Audio (.3gp)
               data_formats: 'aac ' 'aace' 'aach' 'aacl' 'aacp' 'samr' 
    '3gp2' = 3GPP-2 Audio (.3g2)
               data_formats: 'aac ' 'aace' 'aach' 'aacl' 'aacp' 'samr' 
    'adts' = AAC ADTS (.aac, .adts)
               data_formats: 'aac ' 'aach' 'aacp' 
    'ac-3' = AC3 (.ac3)
               data_formats: 'ac-3' 
    'AIFC' = AIFC (.aifc, .aiff, .aif)
               data_formats: I8 BEI16 BEI24 BEI32 BEF32 BEF64 UI8 'ulaw' 
                             'alaw' 'MAC3' 'MAC6' 'ima4' 'QDMC' 'QDM2' 
                             'Qclp' 'agsm' 
    'AIFF' = AIFF (.aiff, .aif)
               data_formats: I8 BEI16 BEI24 BEI32 
    'amrf' = AMR (.amr)
               data_formats: 'samr' 
    'caff' = Apple CAF (.caf)
               data_formats: '.mp1' '.mp2' '.mp3' 'QDM2' 'QDMC' 'Qclp' 
                             'Qclq' 'aac ' 'aace' 'aach' 'aacl' 'aacp' 
                             'alac' 'alaw' 'dvi8' 'ilbc' 'ima4' I8 BEI16 
                             BEI24 BEI32 BEF32 BEF64 LEI16 LEI24 LEI32 
                             LEF32 LEF64 'ms\x00\x02' 'ms\x00\x11' 'ms\x001' 
                             'samr' 'ulaw' 
    'm4af' = Apple MPEG-4 Audio (.m4a)
               data_formats: 'aac ' 'aace' 'aach' 'aacl' 'aacp' 'alac' 
    'MPG1' = MPEG Layer 1 (.mp1, .mpeg, .mpa)
               data_formats: '.mp1' 
    'MPG2' = MPEG Layer 2 (.mp2, .mpeg, .mpa)
               data_formats: '.mp2' 
    'MPG3' = MPEG Layer 3 (.mp3, .mpeg, .mpa)
               data_formats: '.mp3' 
    'mp4f' = MPEG-4 Audio (.mp4)
               data_formats: 'aac ' 'aace' 'aach' 'aacl' 'aacp' 
    'NeXT' = NeXT/Sun (.snd, .au)
               data_formats: I8 BEI16 BEI24 BEI32 BEF32 BEF64 'ulaw' 
    'Sd2f' = Sound Designer II (.sd2)
               data_formats: I8 BEI16 BEI24 BEI32 
    'WAVE' = WAVE (.wav)
               data_formats: UI8 LEI16 LEI24 LEI32 LEF32 LEF64 'ulaw' 
                             'alaw' 

cafファイルを64kbpsのAAC(m4a)にしたい場合。-d(codec) -f(format) -b(bitrate) -c(チャンネル数) で指定する。

<br />
 afconvert -d aac -f m4af -b 64000 -c 2 a.caf<br />
 

あるディレクトリにある全てのファイルを引数として指定し、m4a 64kbps に変換するシェルスクリプト

“$@” が引数全てを意味する。

#!/bin/bash
for f in "$@"
do 
	afconvert -v -d aac -f m4af -b 64000 "$f"
done

参考
位置パラメーターの一括展開 $* $@ “$*” “$@” の違いを知れ!! – Shell Script Advent Calendar 2016 – ダメ出し Blog

afconvertの使い方は、iPhone Core Audioプログラミング P76,77に解説されている。

iPhone Core Audioプログラミング
iPhone Core Audioプログラミング

永野 哲久

ソフトバンククリエイティブ 2009-11-12
売り上げランキング : 12967

Amazonで詳しく見る by G-Tools

関連記事

[iOS SDK] Simulator で Save Screenshot するとクラッシュ

「libswiftFoundation.dylib プラグインの使用中に Simulator が予期

記事を読む

EverLearn 1.7.2 を公開しました

英単語学習用アプリ EverLearn 1.7.2 を公開しました (2015/10/22)TOEF

記事を読む

no image

「CodeIgniter 徹底入門」でPHP学習中

サーバー側のプログラミングに手を出してみたいと思い、何冊かPHP本を買ったりしてみたが、どうもしっく

記事を読む

no image

[iOS] iOS6 から起動時に一度 Portraitになる挙動が変更された模様

iOS6 からは画面の回転関係の仕様が整理されたのか、いろいろと変更が入っている。 まず - (B

記事を読む

LogLocations レビューいただきました

4 star review for LogLocations: 愛用してます | LaunchKi

記事を読む

Apple Developer Program 更新2016

そろそろ期限が切れるので、Apple Developer Program - Apple Devel

記事を読む

no image

Xcode4 の初Submit作業ではまる 2011/07/11

昨夜、タッチ! にほんちずHDの次のアプリを検証していて、iPadを回転させるとアプリが異常終了して

記事を読む

no image

iPhoneアプリで週末起業

2009年7月に出た本なので、今となってはちょっと古いが、当時の熱気は感じられる。 iPhoneアプ

記事を読む

no image

ピーターの法則 ローレンス・J・ピーター

図書館で予約して借りてみた本。 「階層社会では、すべての人は昇進を重ね、おのおのの無能レベルに到達す

記事を読む

アルミユニボディのMacBookを購入

アルミユニボディのMacBookを購入。カカクコムで上位にあった中で何となく信頼できそうに見えたIn

記事を読む

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

Google Search Console の利用を開始してみた

YouTube DATA API (iOS Quickstart  

Xcode 13.1 アップデート

Apple、統合開発環境「Xcode 13.1」をリリース:Code

watchOS8 アップデート内容

この前購入した Apple Watch SE は watchOS 7

#WWDC21の勉強メモ 購入

https://note.com/shu223/m/m1432c13

iOS15にアップデート

2021/09/21にiOS15が公開され、そろそろ初期不具

→もっと見る

PAGE TOP ↑