Diary on wind(跡地)

おもにPC関係(2008-2013)、跡地兼日記避難所(2014-)

Windows上でLAMEをビルド (VC++2008exp + NASM)

2009-09-17 00:07:45 | ソフトウェア

ここではとりあえずLAME 3.97をビルド・コンパイルする。
今回使ったコンパイラは Visual C++ 2008 Exp と NASM 2.07、
PCは Intel Core 2 Duo, Windows Vista SP2 32bitです。

○今回あらかじめ揃えてあるもの
・Visual C++ 2008 Express Edition RTM
・Platform SDK 6.0(Windows Software Development Kit for Windows Vista)
Platform SDKはVC++ 2008 Expに付属するもの(6.0A)でも問題ないです。

source forgeのサイトからLAMEのソースコードを入手。
ダウンロードしたファイルは「.tar.gz」とWindowsユーザーにはなじみのない拡張子だが、Linuxでは標準とも言われるほど使われている圧縮ファイル形式である。
このファイルをアーカイバなどを使って展開する。(以下lameフォルダとする)

また、NASMを入手する。
公式サイト→Download→[rcが付いていない最新のバージョン]→win32 を参照し、そのフォルダの中に1つだけあるであろうzipファイルをダウンロード)
このファイルを展開して中にある「nasm.exe」を「nasmw.exe」とファイル名を変える。
そのnasmw.exeをlameフォルダ内にある「libmp3lame」フォルダの中へ移動。
(NASM無しでもビルド可能だが、NASM利用でビルドしたものに比べてmp3変換速度が若干落ちる。5分ほどの楽曲を'-V1 -q 0 --vbr-new'指定で変換するのに5秒ほど多くかかった。)

lameフォルダ内のlame_vc7.slnを開く。
もし「アプリケーションの選択」が表示されたら「Visual C++~」を選択して「OK」。
変換ウィザードは画面に従って適当に進め、変換する。

上の画像のように、構成を「Release NASM」に変更。
「ビルド」→「ソリューションのビルド」を選択。
うまくいけば、プロジェクト「lameACM」と「MP3X」以外のビルドが成功するはずです。
lame.exe と lame_enc.dllが得られればいいので「lameACM」と「MP3X」はビルドされなくても問題ありません。
lameフォルダのoutputフォルダ内にlame.exeとlame_enc.dllが出力されていれば成功。


また、WDK(Windows Driver Kit)を導入しておけば「lameACM」のビルドも可能です。
そのとき出力されるファイルは下のようになります。

infファイルを右クリック→「インストール」で、音声コーデックとしてlameを選択できるようになります。
アンインストールはコントロールパネルの「プログラムのアンインストール」からできます。

もっともACMを使うのは動画編集ソフトくらいで、動画編集をしない自分には要らん..

(ちなみに「MP3X」のビルドは、いろいろと試行錯誤してみたが無理。
WIndows上でもできないことはなかろうが、Linux上でビルドした方が手間が少ない。)


○更新
09/09/19 少し修正