iTunes-LAMEを使う

iTunes-LAMEは、Google Codeからダウンロードできる。インストールする場所は、どこでも良いが、iTunes-LAMEは、iTunesの一部ではなくて、連携(あるいは寄生)して動作するものなので、自分はAppliction (/Applications)の下にインストールした。

iTunes-LAMEには、iTunesと連携させるためのApple Scriptが付随しているが、それは手作業で登録しなければならない。

http://code.google.com/p/blacktree-itunes-lame/wiki/iTunesLAME

How To Install

Download the ZIP file, and extract the application. Drag the iTunes-LAME application into your Applications folder (or anywhere else).

To integrate iTunes-LAME into the Scripts menu of iTunes, follow these steps:

Control-click on the iTunes-LAME application, and select "Show Package Contents."
Navigate to Contents, then Resources.
Control-click on the "Import with LAME...scpt" file and select "Make Alias."
Finally, drag the alias into your "Library/iTunes/Scripts" folder.

Script Aliasの置き場所は、/Applications/iTunes/Scripts(このディレクトリは初期状態では存在しないから作成する)か、$HOME/Applications/iTunes/Scriptsの下に置く。前者だと他のユーザも利用できるが、どうせ一人で使っているから後者にした。

問題は、上記の操作を行った結果、どのようにiTunes-LAMEiTunesと連携するかわかっていなかったので、iTunesの環境設定を開いては、encoding schemeiTunes-LAMEが出現しないので不思議に思うということを何度も繰り返してしまった。iTunes-LAMEが現れるのは、iTunesのメニューバーでScriptのアイコンが出現し、そこを選択すると"Import with LAME..."が選択できるようになるのだった(ということを書いた記事にめぐりあえなかったので、このエントリーを書いておくことにした)。

これだけで、iTunesからLAMEをencoderとして使えるようになるがそのためには当然ながらCDが挿入された際にiTunesが勝手に(自分で)importを始めないようにしておく必要がある。利用イメージとしては、

  • CDを挿入する
  • iTunesがCDを読み込み、DBを検索し、楽曲情報を表示する
  • メニューから"Import with LAME..."を呼び出す
  • iTunes-LAME.appがiTunesの一部であるかのように実行され、起動パラメータが表示される
  • パラメータを選んで"import"をクリックする
  • rippingが始まる
  • 読み込んだ結果は、iTunes自身で読み込んだ場合と同様に保管、表示される(違うところに保存したり、カスタマイズも可能)

この間iTunesが何をするかというと、iTunes-LAMEに含まれる"lame"というプログラムを実行し、その終了を待つだけだ。で、実際に試してみたら、とてつもなく時間がかかる。「なんだこれは」と思って、調べてみるとどうもユニバーサルバイナリのせい(もある)らしい。つまり、Intel用のバイナリに置き換えれば(もう少し)早くなる。多分、Intel用のバイナリを作っている人もいるだろうと思ったけれど、結局自分でソースをダウンロードしてビルドした。iTunes-LAMEのソースは、subversionで落とせる。

Command-Line Access

Use this command to anonymously check out the latest project source code:

# Non-members may check out a read-only working copy anonymously over HTTP.
svn checkout http://blacktree-itunes-lame.googlecode.com/svn/trunk/ blacktree-itunes-lame-read-only

ビルドは、.confiureとmakeだけで終了するが、バイナリはfrontend/lameとして作成されていた。使いたいのは、"lame"ご本尊だけで良いので、make installする必要はない(しても良いが、するならiTunes-LAME.appのインストールはしないほうが無難だろう)。

% sudo cp frontend/lame /usr/local/bin
% ln -s /usr/local/bin/lame /Applications/iTunes-LAME.app/Contents/Resources/lame

とした。これでコマンドラインでもiTunesからでも同じIntel用のlameが使える。「どのくらい早くなるかな?」と思って試してみたが、劇的に早くはならないものの明らかに早くなっている。本当はここでAAC 128k/192kとのLAMEのmp3の音質の聞き比べをしたいところだが、面倒なのでしばらくLAMEを使ってみることにした。ただ、試してみた範囲でもLAMEで作成したmp3の音質は良く、これまで使っていたAAC 192kを上回っているように思う。