mp3 から aac にコマンドラインで変換
mp3 のファイルを aac ファイルに変換する方法のメモです。GUI アプリケーションでやる方法は色々探せば出てきますが、QuickTime が必要な場合がほとんどです。個人的には QuickTime はお行儀がいまいち宜しくないので避けたいところです。
そこでオープンソースの無料で使えるソフトウェアを使い、コマンドラインによる方法を紹介します。コマンドラインなので様々に応用が利きます。またこの方法は Windows、Linux 問わず可能です。mp3 から wav への変換を mpg123 で、wav から aac への変換を faac で行ないます。
Windows での方法
まず mpg123のサイトから Windows バイナリファイルをダウンロードします。この記事を書いている時点の最新版は1.10 です。static-x86 版をダウンロードします。
次に RareWares のサイトから FAAC Binary for Win32 をダウンロードします。
ダウンロードしたら解凍して出てきた mpg123.exe と faac.exe をパスの通ったフォルダに入れます。次のようにコマンドラインで変換します。
C:\>mpg123 -w temp.wav example.mp3 C:\>faac temp.wav -o example.aac C:\>del /q temp.wav
Linux の場合
CentOS の場合、yum で RPMforge のリポジトリを利用すれば、mpg123、faac ともに RPM でインストールできます。
# yum install faac mpg123
使い方は次のようになります。
$ mpg123 -w temp.wav hoge.mp3 $ faac temp.wav -o hoge.aac $ rm temp.wav
Windows、Linux とも標準入力を使う方法がうまくいかないため、temp.wav という作業ファイルを介しています。
Linux だと xmms を使う方法もあるようなのですが、mpg123 の方が簡単です。また ffmpeg はライセンスの関係で libfaac を使わないでビルドされる様になったため、mpg123 の方法を紹介しました。
津田ふみかが変換するの?
コメント by BlogPetのusausa — 2010-02-4 14:39
Windowsでmpg123を実行したら「libltdl-7.dllが見つかりません」というエラーになります。対処方法を教えて下さい。
コメント by 吉松前秀 — 2010-02-9 20:31
ダウンロードされたのは static-x86 と書かれている方でしょうか。
私が試したのはファイル名が mpg123-1.10.0-static-x86.zip となっているものです。
mpg123-1.10.0-x86.zip の方だとそのようなメッセージが出てしまいます。
コメント by 津田 ふみか — 2010-02-10 14:15
大変失礼致しました。ご指摘のとおり私のダウンロードミスでした。mp3→aac変換正常に実行出来ました。これでiTunesや有料ソフトを利用せずに簡単に変換する事ができます。有意義な情報提供に感謝致します。ありがとうございました。
コメント by 吉松前秀 — 2010-02-10 22:34
再度質問をお願いします。変換したaacファイルをm4aにrenameして携帯に転送し再生すると「再生できません」とエラーになります。aacとm4aは別物でしょうか?もし別物ならば、m4aに変換する方法を教えて下さい。
コメント by 吉松前秀 — 2010-02-11 00:17
m4a は aac そのものではありませんが、内部に aac の方式で圧縮した音声データを格納できます。
faac で m4a にする場合は -w オプションを使えばできるようです。
> faac temp.wav -w -o example.m4a
のようにすればできるはずです。
ただし m4a は内部のデータの種類がいろいろありますので、携帯でこのファイルで再生できるかどうかはわかりません。
コメント by 津田 ふみか — 2010-02-11 21:03
faac -w オプションで再生できました。いろいろ質問してお手数おかけしました。
コメント by 吉松前秀 — 2010-02-12 21:08