「DVD・TV→AVI・OGM・MKV入門」と「MP3・Vorbis・AAC―動画音声の話」を組み合わせることで、MP3音声、Vorbis音声、AAC音声の動画はだいたい何でも作成できるはずですが、 音声MP3のAVIを普通に作りたい場合に限定すると、 もっとラクな方法があります(ラクなだけに限界もあります)。
必要となる関連情報として、 ACM(外部ツールを使わない方法)でMP3圧縮を行うときビットレートが上限 56Kbps 24000Hz までしか選択できない問題の対応について、 LAME ACMのインストールを1ステップずつ図解します。全体としては AviUtl から使う話ですが、 この部分は、ほかのツールからMP3を使うときにも、そのまま同じです。 参考として、IISコーデックを使う別方法も簡単に紹介しました。
オーソドックスな(そして応用がきく)方法では、
という手順ですが、以下の簡略版では、例えばDVDから出発する場合、
という2つのステップで済み、「外部エンコーダで音声を圧縮する手間」と「VirtualDubModで映像・音声を合体させる手間」が省けます。
DVD2AVIでVOBを開くところまでは「DVD・TV→AVI・OGM・MKV入門」と同じ。 メニューの「音声」で次のように設定する。
音量正規化(ノーマライズ)についての詳しいことは、付録を見てください。 ここでやるのは「簡単な方法」なので、 「ドルビーデジタルデコード」メニューはいじらないことにします。 (そういった微妙な処理にこだわるなら、 そもそも16-bit WAVで中間出力せず、 AC3のままBesweetに渡して、直接MP3なりに変換するのが良いでしょう。)
これでプロジェクトを保存すると、D2VとWAVに分離できます。
テレビキャプチャーなどで音声がMpeg Audio Layer2のときは、DVD2AVIではWAV化できないので、 音声部分をとりあえず拡張子MPAのファイルに分離します。 このMPAファイルは、拡張子をMP2に変えてfoobar2000でWAV化しても良いですし、 拡張子そのままでぷっちでここなどに渡してWAV化しても良いですし、 自分のやりやすい方法でWAV化してください。
一応念のために、できたWAVをfoobar2000で再生してみましょう。 DVDソースの場合、間違った言語音声のトラックをデコードしてしまっていないか確認しましょう。 TVソースの場合、サンプリング周波数が44100なのか48000なのか再確認しておきましょう (foobar2000のリストで選択して右クリック Show file info → samplerate を見る )。
AviUtlの「ファイル|開く」で問題のD2Vを開き、 次に「ファイル|音声読み込み」で今、分離したWAVを読み込みます。 これでAviUtlには映像と音声の両方が読み込まれており、AVI出力すればいきなり音声付きの完成品AVIになります。 さらに便利なことに、この状態でAviutlでCMカットなどを行うと、カットした部分に対応する音声も同時にカットされます。
さて、「設定|圧縮の設定|オーディオ圧縮の設定」を見てください。 多分、何もインストールしなくても「形式」のリストの中には MPEG Layer-3 という項があるはずです。 ドイツのフラウンホーファー研究所が開発したMP3コーデック(通称FhGまたはIIS)が、 大半のWindowsのシステムディレクトリに既にインストールされているからです(L3codeca.acm)。
参考: FhGはフラウンホーファー・ゲゼルシャフトFraunhofer-Gesellschaft(フラウンホーファー社)の略。IISはインスティトゥート・インテグリーテ・シャルトゥンゲン Institut Integrierte Schaltungen(集積回路研究所)の略。
まあ、ドイツ語の発音はちょっと違うかもしれませんが、要は企業名とその企業内の研究所名です。
急にMP3の特許権を主張して料金を要求したことでイメージが微妙になりましたが(Ogg Vorbis の人気が上がった大きな要因)、
純粋に技術的には優秀な研究所です。
ここで圧縮の設定を選べば、映像のエンコと同時に音声部分もしかるべくMP3にエンコされ、 一気に合体しながらAVI出力されるので、とにかく処理を簡単にしたいというニーズにはぴったりでしょう。
ひとつだけ問題があって、多くのユーザでは上限がステレオで56Kbps (24,000Hz)に制限されてます。56KbpsのMP3などは音が良い悪いという以前に、まともに音がしません。 ニュース番組の音声ならともかく、アニメや映画、ましてや音楽のビデオでは、 やはりMP3なら128Kbpsくらいは必要ですから、56では必要量の半分未満……。 音声も一気にMP3圧縮、という手を使いたいなら、まずレート制限を何とかしなくてはなりません。
この問題に対する戦略は大きく分けて二とおりあって、 LAME ACMを使うか、L3codeca.acmを入れ直すか、です。 推奨はLAMEで手順は次のとおり(L3codeca入れ直しは付録参照)。
作業の前に――もしトラブルが起きたら、 コントロールパネルの「アプリケーションの追加と削除」からLAME MP3をアンインストールしてください。
トラブルシューティングも見てください。
映像成分については、DVD・TV→AVI・OGM・MKV入門と同様ですが、 読み込んだWAV音声についても、「設定|圧縮の設定|オーディオ圧縮の設定」で設定します。
AC3音声のDVDの場合は、DVD2AVI側でノーマライズ(この場合は推奨)したなら、 この処理は不要です(するべきでありません)。
それ以外の場合、オーディオエディタで見て音量が小さいようなら、 Aviutlの「設定|音量の最大化の設定」で右上にチェックを入れ、 レベルを255にします(最大は256。余裕を見て1小さく)。
メニューの「フィルタ」で「音量の最大化」にチェックが入ったことを確認します。 (「音量の調整」はチェックせず、「音量の最大化」をチェック)
後は音声なしのビデオの場合とまったく同様にエンコードするだけです。 最初にやるときは、試しに30秒くらいテストエンコードしてみたら良いでしょう。
LAME ACMはすべての環境で動作する保証はありません。 単に動作しないばかりか、 ACMからオーディオ圧縮を設定しようとしただけでアプリケーションが異常終了することもあります(特に安定系以外のLAMEは要注意)。 こうしたトラブルが起きたなら、LAMEはあきらめて、「アプリケーションの追加と削除」からアンインストールしてください。
LAME ACMが使えない場合には、LAMEを外部エンコーダとして使うか、 またはL3codeca.acmを使ってください。
48000か44100かの選択と、CBRを選択していることを再確認してください。
同じMP3のACMが重複するため、LAMEとIISコーデックの選択で不具合が生じる可能性もあります。 通常、デバイスマネージャから優先順位を変更することで対応できますが、 どうしても駄目なときは、デバイスマネージャからふだん使わないほうを「使わない」にしてみてください。 それでも駄目なときは、使わないほうを削除してください。 すなわち、LAMEなら「アプリケーションの追加と削除」から、 IISならデバイスマネージャから削除してください。 (どちらも必要なら後からまた戻せる。)
たとえ入力が同じWAVでも、 ACM経由では、安定度、柔軟性、音質などで、 外部エンコーダとしてのLAMEにはかないません。 そりゃまあ、手間をかければかけただけの違いはあって、 音声専門のソフトで別圧縮したほうが、 良い結果が出やすいですよね。
ひとつには、ACMコーデックはLAMEのバージョンアップに関して後手後手になりやすいです。 (特許権などの問題のため、LAMEのソースの配布とバイナリの配布が別々になっているため。) 今回さしあたって3.92のACMを紹介しましたが、2003年10月時点でLAMEの安定版は3.93.1であり、 3.92に比べていくつかの改善や修正が行われています(Changelog)。 3.92は十分に良いし実用上、問題ないですが、LAME本体がバージョンアップされても、 ACMも常にバイナリでいっしょに配布されるわけではなく、 配布されていても常にうまく動作するわけではない、という点は承知しておいたほうが良いでしょう。
そもそもこの方法では入力の段階で差が出てしまいます。AC3から直接MP3にすれば、 内部の解像度24ビットで処理できるものを、 この方法ではいったん16ビットでWAV出力しています。 ただしこの違いは通常、知覚できるものではありません。 理論的には最高でないとしても、 実用的にはACM経由で少しも悪いことはありません。 ACM経由は常に最高ではないのですが、その分、一定の結果が出せます。 何でも自由に操作できる外部ツールでは、何かの間違いでとんまなコマンドを打ってしまわないとも限りませんが、ACM方式だとそもそもレートくらいしか選べるところがないので、間違いたくても間違う場所がもともと少ないです。
ただ、いちばんの問題は、このACM経由の方法しか知らないと、 応用がきかないということでしょう。 AVI動画より優秀な、OGMやMKVに進みにくいってことですね。 それに、ACM経由は手軽なようですが、ビデオ圧縮の時間にオーディオ圧縮の時間が加算されていて、 トータルで大して速くなるわけではないです。単にクリックの回数が少し節約できるだけです。
できれば外部エンコーダも使えるようになって、目的によって、 ACM経由と使いわけるようにしてください。 オーディオを外部エンコーダで処理する作業に慣れていれば、 そこをVorbisやAACに置き換えるだけで、いろいろ可能性が広がります。 MP3なら160Kbpsが無難と書きましたが、 VorbisやAACなら128Kbpsでも相当良いと思うので、機会があったら聞き比べてみて。
別に知らなくても操作は困りませんが、操作の意味は――。
16ビットの音声データでは、 音量は0~65535の65536段階です。 100%で最大化するとは、そのWAVファイルのなかで音が最大の場所(ピーク)が65535になるように、 全体にボリュームを上げること。 元のファイルが最大でも50%までしか振れてないなら全部のデータを2倍し、 75%まで行っているなら1.25倍する。 具体的には、まずWAV全体をスキャンして今の最大値を見つけ、 次に全体を「可能な最大/今の最大」倍。
ボリュームが小さすぎれば聞きにくいことはもちろんですが、 ノーマライズされたデータでは変換で四捨五入の丸め誤差1が生じても、まあ65536段階の中の1段の話です。 音量が小さい場合、例えば最大でも20000しか行っていないとすると、丸め誤差の1が20000分の1を意味し、 ノーマライズされた場合に比べてつまらない計算誤差でSN比が悪化しやすくなります。
しかし、いつでもせいいっぱいノーマライズすればいいわけでは、ありません。
MP3でLAMEではなく「Windows標準」?のFhG IISを使って56Kbpsの制限を何とかしたい、 という場合には、 DivX 3.11 をインストールするのが早道です。 (いわゆる Radium Codec は、DivX 3.11 に含まれているので、別個にインストールする必要ない。)
divx_311alpha.exe 582,776 Bytes 7A749EFC 同梱 l3codeca.acm 1.2.0.63
インストーラを起動するとDivX ;-) MPEG4 Video Codecという赤い画面が出るので、 後は普通に進んで、Run Me First !! をクリックすればインストール完了します。 いろいろ言われますがすべて無視して続行。
Windows Media Player 9 を常用している人は、いくらこれをやっても、 制限なしのl3codeca.acmをすぐ制限つきl3codeca.acmで上書きされてしまうでしょう。 上書きされたら、DivX 3のインストール先(デフォは C:\Program Files\DivX_311alpha だが変更も可能)に行って、 Register_DivX.exe を起動して上書きし返せばいいのですが、 面倒なので、動画を作る人は「WMP9 など使わない」か「IISコーデックなど使わない」か、どっちかに腹を決めてください。 上書きされないように、L3codeca.acm のファイルのプロパティを「読み取り専用」にしてしまうという荒技も考えられますが……。 (思わぬトラブルの原因になりかねないので、お勧めはしません。 ただ、一般的に、上書きされると困るファイルにリードオンリー属性を設定する、ということは、コンピュータの操作の基本として覚えておいて損はないでしょう。)
理性的に考えて、こんな前世紀のコーデックより、 MP3は今なお改良が続いているLAMEが良いでしょう。 少なくも160Kbps以上ではそうですし、 128Kbps以下なら(MP3エンコーダの微妙な特性差に一喜一憂するくらいなら) AACやOgg Vorbisが小さくて高音質です。ていうか、音声部分なんて微々たるもの、 128だって160だって200MB中の数MBなんだから、特にサイズがぎりぎりでなければ、 余裕を見た音質にしておこう。
このメモは十分に検証されていない実験的内容を含んでいます。 (掲示板の情報 #1752)
WMP10をインストールするだけで制限がなくなるわけでないので注意。
WMP7/8 あたりから MP3コーデック(l3codeca.acm)にステレオで 56Kbps という非常識な上限がつくようになった。 ところが WMP10 では、この制限のないMP3コーデックが同梱されている。 以前の「ハック版」仕様が「公式」になった。
最近は Apple が AAC(MP4) 128、Real が AAC 192 と音質競争の傾向があるなか MP3 56 では話にならないので、Microsoft のこの決断は不思議でもない。 (そもそも56K制限がユーザをバカにしすぎだった…。)
さて、動画でこのACMを有効にする方法ですが…
VirtualDub から ACM で 320Kbps まで使えるようになることを確認した。 上記の手順では、WMP10をインストールする必要さえない(もちろんインストールしてもいい)。 DivX 3.11 alpha にも同梱されているいわゆるラジウムコーデックは、 1.2 Build 63i だが、 今回 WMP10 に同梱されているものは 3.3.2 Build 44 であり、最新版だ。 順当に考えれば、前世紀の版より性能も改善されているはずだ。 その意味でも ACM で IIS を使う動画作成者は検討してみてほしい。
ただ上述の「単に上書きコピーするだけ」の方法で問題がないかどうか、確証ない。 お気づきの点がありましたらフィードバックお願いします。
音質にこだわるのなら今は動画に Vorbis や AAC も使えるのだから、 LAME と IIS とどっちがいいかとか、 ACM 経由ではどうこう、というのは言ってみても仕方ないような気もするけれど、 「IIS ACM MP3 を使うなら」という前提では、 もはや前世紀の DivX 3 版ではなく、WMP10同梱版のほうが良いのではないか。 手元ではあまりACMは使わないし、ましてダブルブラインドの証拠があってそう言っているわけではないので念のため。
l3codecp (Pro: 以下P版と略) と l3codeca (Adcanced: 以下A版と略) を簡単に切り替えてテストできるように .bat ファイルを作ってみました。 l3c.zip
l3c-inst.bat は WMP10 をインストールせずに使う方式。 WMP10 のインストーラを直接解凍したら、解凍先フォルダに l3c-inst.bat を放り込んでクリックするだけで、 P版が有効になって、IIS が 320 まで使えるようになるはず。
l3c.bat は WMP10 をインストール済みのユーザ用。 どこに置いてもいいので単にクリックすると、P版が有効になります。
どちらの方式でも、l3c-undo.bat をクリックすると、デフォルトの環境が復活して、 A版が使用されます。公式には56Kbpsの制限が出ますが、 DivX 3.11フルセット導入下でA版とP版を切り替えるということは、 同じ無制限版でも 1.2 Build 63i と 3.3.2 Build 44 は果たしてどちらがいいのかの比較という意味です。
切り替えるたびに VD を再起動してください。 あと、デバイスマネージャが開いている状態だと、上書きコピーできないので注意。 共有エラーが出たら Explorer を再起動するか、 いったんログオフするか、OSを再起動してください。
DivX 3.11 導入下で WMP10 をインストールしても、A版コーデックは更新されません。 そもそも WMP10 には A版は入ってないです。 l3codec*.acm は細かい種類が多すぎて微妙なので、 上記のテストは、XP SP1 をクリーンインストールした直後の状態でやりました。
DivX 3.11 は、正式のものではないハック版で、正常に動作する保証もありません。 IISでも正当に56Kbps超を使えるようになったので、必要ない限り DivX 3.11 をインストールしないようにおすすめします。 (インストールする必要がある場合 = DivX 3.11 で圧縮されたビデオを VfW で開きたいとき。 その場合でもMP3コーデックはインストールする必要ない。)