ReplayGain(リプレイゲイン)とは、音声ファイルを再生する際に音量(正確にはラウドネス、すなわち人が聴いて感じる音量感)を指定の目標値に揃える機能で、多くのソフトや機器に採用されています。
【大まかな仕組み】
●事前に、ReplayGainの音量解析機能を持つソフトを使って各曲の音量を調査し、その結果を所定の形式で各曲ファイルのタグに記録します。
●ReplayGain再生対応ソフトや機器は、再生する際にタグのReplayGain値を参照し、それに基づいて音量を指定値に揃えて再生します。
【特徴】
●タグに情報を書き込むだけで音声データそのものには一切手を加えず、再生の際に再生音量を自動調整する仕組みです。
- 音声データの劣化や変質はありません。
- 再生ソフトでReplayGain機能をオフにすれば、元々の音量で再生されます。
- 再生ソフトの設定切り替えで、揃える目標値や揃え方(アルバムゲイン、トラックゲイン)をいつでも切り替えできます。
- ReplayGainが有効なのはReplayGainに対応しているソフトや機器で再生する場合だけ。非対応のソフトや機器(WMP、iTunes、MediaGo、iPod、ウォークマンとか)には影響がなく、元々の音量で再生されます。
- 波形ピーク値に基づく簡易なノーマライズとは違い、音声のエネルギー量や人の聴覚感度の周波数特性に基づく調整をするため、音量がよく揃います
- 類似技術は幾つかあります(2003に初搭載のWMPの「再生音量を揃える」、2002に初搭載のiTunesのサウンドチェック等は、内容及びタイミングから考えてReplayGain(2001に技術公開)を模倣したものと思われる)が、ReplayGainは多くのソフトや機器で採用されていて汎用性が高いです。
- 技術的な詳細はこちらを参照(英文)。
因みに、iTunesのサウンドチェックは後発で模倣でありながら音量揃え性能はReplayGainよりも低いともっぱらの評判であり、このためReplayGainの技術を使って音量解析をやり直し、サウンドチェック情報を書き換える「iVolume」なる高価な有料ツールがもてはやされています。
(尚、「iVoumeを使うと音質も向上する」といった話をネット上で時折見かけますが、そんなことはあり得ません。iVolumeはただ音量解析をやり直してサウンドチェック情報を書き換えてるだけで、実際に音をいじる部分はサウンドチェック機能をそのまま使ってるのですから、プラセボに惑わされてるだけでしょう)
同様の処理は、やや上級者向きですがMP3Tagなどを使っても可能なようです。
【主なWindows用対応フリーソフト】
●解析機能と再生機能を併せ持つもの・・・音楽管理ソフトなど
AIMP、beaTunes、Foobar2000、J.River Media Jukebox、MediaMonkey、MusicBee、Quintessential Media Player、Quod Libet、QuuxPlayer、SongBird(解析は要追加Add-on)、TuneBrowser、Winamp など
●再生機能のみ(他ソフトで解析しておく必要あり)・・・プレーヤーソフトなど
Amarok、Boom Audio Player、Clementine、Fittle(要追加Plugin)、Helium Music Manager、JavaTunes、KbMedia Player、Lilith、Lutea、Mixxx、Nightingale、Qmmp、uLilith、VLC media player、XBMC、XMPlay、など
●解析機能のみ・・・変換ツール、解析専用ツールなど
- dBpoweramp Music Converter、Xrecode2、Xrecode3などは変換ツールだが、多くの形式に付き解析と結果のタグ書き込みだけ行うことも出来るので、解析ツールとしても使い勝手が良い
- 特定ファイル形式専用の解析ツールも色々ある(FLAC用のMetaFLAC.exe、OggVorbis用のVorbisGain、etc.)
- EcoDecoTool、Helium Audio Converter、Helium Audio Ripper、MediaCoder、uLilith など一部のツール類は変換の際に音量解析を行ってタグに書き込みが可能
- flac.exe、lame.exeなど一部のコマンドラインエンコーダは自前で解析機能を内蔵しており、変換時に解析結果をタグに書き込む事が可能(但しlame.exeはID3v2タグではなくlameタグに書き込むため、対応再生ソフトは限られる)
●その他
- EcoDecoTool、MediaCoder、Xrecode2、Xrecode3、XMedia Recode、Foobar2000、MusicBee、MediaMonkey など一部のファイル変換ソフトや音楽管理ソフトは、ファイル変換の際にReplayGain値を元に、(タグ書きこみでなく)変換ファイル自体の音量を調整する機能がある
- cdrtfe、Foobar2000、MediaMonkey など一部の CD ライティングソフトや音楽管理ソフトは、ReplayGain値を元に、オーディオ CD 形式で焼く際に音量を指定値に揃える機能がある
- WinampはReplayGainへの対応が比較的遅かったため、本体の対応を待たずに各InputPluginがReplayGain再生機能を搭載したものが少なくない。こうしたものを利用すれば、Winamp用InputPluginが使えるソフトでは本体が非対応でもReplayGain再生が可能となる(1by1、QCD、など)
- DirectShowFilterもReplayGain再生に対応しているものが一部あり、そうしたものを利用すればWMPや簡便な再生ソフトでもReplayGain再生が可能なようである
- MP3Gain、AACGain、WaveGainなどは、ReplayGainの手法でファイルの音量を解析し、その結果を元に再エンコード無しでファイル自体の音量を揃えるツール(Foobar2000、MusicBee、MediaMonkey 等にもMP3限定で同様の機能あり)
- Audacity用のナイキスト・プラグインとして、ReplayGainの手法で音量を解析して揃える事ができる ReplayGain.ny が公開されている
- VSTプラグインで、再生時の各瞬間のReplayGain値(または、EBU R128のゲイン値)を表示するメーター類が幾つか存在するようである
【主な対応機器、Android用対応アプリ】
従来型の機器では、ReplayGainに対応してるものはあまり無いようで、当方で把握してるのはFiioの各機種くらい(ファームウェアupdateで対応?)。
当方ではAndroid機器で音楽は聴かないので調べていないが、高機能なプレーヤーアプリは結構ReplayGainの再生機能に対応してるようです。
例えば・・・
もっとも、高機能な音楽管理ソフト等は同期・転送時にReplayGain値を元に音声ファイル自体の音量を揃える機能を持ってるので、そうしたものを使えば機器の対応は不要(実際に当方でも、MediaMonkeyを使ってPC中のFLACをMP3に自動変換&音量揃えをしてMP3プレーヤーに同期転送している)。
【おまけ:MP3Gainの動作について】
有名なソフトの割に、その処理内容について理解されていないようなので・・・。
●音量解析
ReplayGainとほぼ同じ手法で音量を分析し、更にAPEタグに現状の音量に基づくReplayGain値を書き込みます。
- ReplayGainは基本的に50ms単位で音量を解析する規定になっている(実際にどうしてるかは不明)が、MP3Gainはフレーム単位で解析する。因みにMP3の1フレームはサンプリング周波数で異なり、44.1kHzなら約26ms。
- ReplayGainでは、MP3にReplayGain値を記録する先はID3v2タグがデファクトスタンダードであり、APEタグに記録されたReplayGain値は当方の知る限りfoobar2000、MusicBeeなどごく限られたソフトしか認識しないのであまり意味がない。
- aacgain.exeに置き換えていた場合、AAC(m4a、mp4)ファイルに対してはiTunes仕様のタグに書き込むため、多くのソフトでReplayGain値は有効。
- タグを読み書きしない設定にしていると、ReplayGain値のタグへの書き込みは行わない。
●ゲインの適用
上記の分析結果と音量目標値を元にMP3の音声データ自体の音量を1.5dB単位で変更します(音声データの各フレームが持つGlobalGainという値をすべて書き換える)。更に書き換え後の音量に基づくReplayGain値を再計算してAPEタグのReplayGain値を書き換え、また音量を元に戻すための情報をAPEタグに書き込みます。
- ReplayGain値の有効性については、音量解析の項に記したのと同様。
- タグを読み書きしない設定にしていると、ReplayGain値の書き換え、音量を元に戻すための情報の書き込みは行わない。