Replaygain つかいかた
Replaygainとは†
音楽ファイルのコレクションが増えてくると当然様々な音量のファイルを再生することになるが、その時にいちいちボリュームを変更するのは非常に面倒。そこであらかじめ曲の音量を分析して、その情報を利用して音量を調節しようと考案された。
Replaygainで得られるメリット†
- 一番のメリット
- デコード時に音量を揃えてくれるので、ボリュームを調節する必要がなくなる。
- 副次的なメリット
- 非可逆圧縮ファイルのデコード時のクリッピングを防ぐので、高品質なデコードが可能になる。
他の手段(ノーマライズなど)に対するReplaygainのメリット†
- ロスレスである
- エンコード前にノーマライズしておくタイプと異なり、ファイルの音楽データ自体には改変を加えずにタグにReplaygain情報を保存するのでロスレスである。
- より高度な方法で音量を揃えることができる
- いわゆるノーマライズとは異なり、より高度な方法で音量を揃えることができる。
普通のノーマライズでは、例えばアルバム中でアーティストが意図して音量を小さくしてある曲がある場合でもアルバム中の全ての曲を一定の音量に揃えてしまう。これではトラック間の音量の関係を壊してしまう。
Replaygainではアルバム中の曲の音量を全曲一定の割合で調節するので、アルバム中の曲の音量の関係は保たれたままである(この音量の揃え方をAlbumgainと呼ぶ)。もちろん普通のノーマライズのように全曲を一定の音量に揃えることもできる(これはTrackgainと呼ぶ)。
この2つは演奏時にいつでも簡単に切り替えることができる。
- Replaygainはピークレベルを揃えるタイプのノーマライズでもRMSノーマライズでもなく、より聴覚に近い結果になる分析をしている。詳しくは本家を参照。
- クリッピングを防ぐことができる
- 最近の楽曲(特にJpop)は最大音量が非常に高く、なにも処理せずに再生すると大体クリップする。
foobar2000は音楽データをfloating-pointで処理しているので、非可逆圧縮では不可避であるクリッピングを音質の変化なしに防ぐことができる(用いているデコーダのつくりにもよる。foobarの場合はMP3/Vorbis/MPC/AAC/AC3デコーダはOK)。
Replaygainでは音量を揃えるための基準音量を89dB*1に設定しているが、これに合わせるとほぼ全てクリップしない音量に収まるので問題は解消する。
foobar2000のReplaygainの流れ†
- ファイルをデコードして平均音量とピークを分析
- その情報をタグに保存*2
- デコード時にその情報を利用して音量を調節
Replaygain scannerの設定†
- Album grouping pattern (default: %album artist% | %date% | %album%) :
- どのような基準でアルバムのグループを分けるか設定する。この設定は分析時の "Scan Selection As Albums (by tags)" で利用される。
- Quiet mode:
- Thread priority:
Replaygain analysis†
ここでReplaygain analysis(分析)を実行する。分析したいファイルを選択し、右クリックから Replaygain を選択する。
- 一曲だけの場合や、シングルの集合のような場合は "Scan Per-File Track Gain"
- 複数選択したファイルを一つのアルバムとしてスキャンしたい場合は "Scan Selection As Single Album"
- Albumgain情報とTrackgain情報が記録される
- 複数のアルバムを選択した場合は "Scan Selection As Albums (by tags)"
- タグを参考にしてアルバムごとに "Scan Selection As Single Album" をしてくれる。基本的にはこれを使っておけばいいだろう。
判定方法の変更は "Album grouping pattern" から。
演奏時の設定†
この設定は演奏時のほか、Replaygainを利用する他のコンポーネントにも影響する。設定はデフォルトで構わない。
- Source mode
- none : ファイルのReplaygain情報を無視する。すなわち、Processingでapply gainを選んだ場合はPreampのWithout RG Infoの値を利用する。
- track : Trackgain情報を利用する。
- album : ファイルにAlbumgain情報が記録されていればAlbumgain情報を、Trackgain情報しか記録されていなければTrackgain情報を利用する。
- 設定はキーボードショートカットに割り当てることができる。
- Processing
- none : 何もしない。
- apply gain : Replaygain情報を演奏に反映させる。
- apply gain and prevent... : apply gain後でもクリップするファイルではピーク情報を利用してクリップしなくなるまでさらに音量を下げる。
- prevent clipping... : ピーク情報を利用してクリップしなくなるまで音量を下げる。クリップしていない音楽ファイルには何もしない。
- Preamp
- With/Without RG info : Replaygainしたファイルとしていないファイルが混在している場合、Replaygainしたファイルの音量が相対的に小さくなるので、"File without RG info" を5~10dBほど下げるとバランスがとれる。
Replaygain情報の実体†
Propertiesダイアログ/Propertiesタブ - ReplayGain部分がReplaygain情報。Track Peak と Album Peak はピークレベルのフルボリュームに対する倍率。1.000000を超えている場合はクリップする場所があることを示している。Track Gain と Album Gain は基準音量との差。この差の分音量を調節してやれば基準音量(89dB)と同じ音量になる。
その他の情報†
- Replaygain情報をID3v2タグとしてMP3ファイルに書き込んだ場合、他のタグエディタでのID3v2タグ編集で問題が発生する可能性があるのでfoobar2000でタグ編集をするのが安全。
(詳しい説明 : ID3v2.3タグで定義されていないフィールドの扱いについて)
- Ogg VorbisファイルのタグをKbSTEで編集するとReplaygain情報が失われるので、mp3infpやSTEPやwinampを使用する。
- コンテキストメニューの「Apply Album/Track ReplayGain to MP3 Data」はMP3Gainと同等の機能。ただし音量変更の履歴は残らない。
Replaygainの種類とソフトウェア†
Replaygainのコンセプトを実現する方法として、音楽データに改変を加えるタイプのものと音楽データ自体には改変を加えずにタグ・メタデータを利用するタイプのものの二つがある。foobar2000は後者*3。
音楽データに改変を加えるもの†
- wavegain
- 対応フォーマット : WAVE (PCM)
- WAVファイルの音量を調節する。不可逆。
- MP3Gain
- 対応フォーマット : MP3
- スケールファクタを操作して再エンコードなしにMP3ファイルの音量を調節する。同時に音量変更の履歴をタグやログファイルに書き込む*4ことで、音量を元に戻すこともできる。つまり可逆なのでwavegainとは少々性格が異なる。
- AACGain
- 対応フォーマット : MPEG-4 AAC
- 機能はMP3Gainと同様。
音楽データ自体には改変を加えずにタグ・メタデータを利用するもの†
タグ・メタデータを利用してReplaygainするソフトウェアは二つの役割に分けられる。foobar2000は両方の機能を持っている。
- 音楽ファイルを分析してReplaygain情報を算出しタグ・メタデータを付加する役割を担うReplaygainスキャナ
- Replaygainスキャナによって付加された情報を読み込んでデコード時に音量を調節する役割を担うReplaygain対応プレイヤー・デコーダー
Replaygainスキャナ†
- foobar2000
- 対応フォーマット : foobar2000でタグ書き込みが可能な全てのフォーマット
- VorbisGain.exe
- Replaygain.exe
- MetaFLAC.exe
- FLAC.exe
- LAME.exe (v3.95以降)
foobar2000一択。コマンドラインから操作したい人だけVorbisGain.exe、Replaygain.exe、MetaFLAC.exeを使えばよい。LAME.exeとFLAC.exeはエンコードと同時にReplaygain情報を記録するタイプのアプリであるため、trackgain情報しか記録できない。
Replaygain対応プレイヤー・デコーダー†