目的
WMA形式の英語学習用データをiPhoneで再生できるように変換する。
元のデータを確認
ffprobeというコマンドで。
% ffprobe 01X_e_195_RE.wma
...
Input #0, asf, from '01X_e_195_RE.wma':
Metadata:
WMFSDKNeeded : 0.0.0.0000
DeviceConformanceTemplate: L1
WMFSDKVersion : 11.0.5721.5145
IsVBR : 0
Duration: 00:00:44.12, start: 0.000000, bitrate: 65 kb/s
Stream #0:0(jpn): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, 2 channels, fltp, 64 kb/s
一旦、単体ファイルを変換してみる
以下のようなコマンドでできた。
% ffmpeg -i 01X_e_195_RE.wma -acodec aac -ab 74k 01X_e_195_RE.m4a
ビットレート(-ab)の値は、元ファイルのビットレートより1割ぐらい高めにするとよさそう?
% ffprobe 01X_e_195_RE.m4a
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '01X_e_195_RE.m4a':
Metadata:
major_brand : M4A
minor_version : 512
compatible_brands: M4A isomiso2
encoder : Lavf58.76.100
Duration: 00:00:44.12, start: 0.000000, bitrate: 66 kb/s
Stream #0:0(jpn): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 64 kb/s (default)
Metadata:
handler_name : SoundHandler
vendor_id : [0][0][0][0]
findとの組み合わせで一括変換
ディレクトリ配下をfind -execで探索してすべて変換する
% find . -name '*.wma' -exec ffmpeg -i {} -acodec aac -ab 74k {}.m4a \;
以上