code up

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

TMPGEnc Video Mastering Works 5 - 音声ボリューム調整フィルタ

TMPGEncで変換したとある動画、何故かオープニング曲の音量がひどく大きかったので音量を下げたところ、今度は効果音は普通に聞こえるのだが本編の台詞がとても小さくて聞き取りにくいという症状に出くわした。

結局セリフが聞こえないので大きめの音量で聴き、そのため爆発音などの大きい音の効果音の度に耳が痛くなっていた。最近観ているシリーズでこの傾向が顕著なのでエンコード時に調整することにした。

環境はWindows 7 Ultimate 64bit。

なお、音響の専門家ではないため用語はシンプルであり、また内容に間違いがあるかもしれません。ご了承下さい。

TMPGEnc Video Mastering Works 5の場合、ボリュームの調整はフィルタにある『音声ボリューム調整』が該当する。

先に結論から

普段はこのフィルタは使わないが、あまりにも音の高低差が激しい時、例えばうるさいオープニングがほどほどに聴けるよう音量を下げていると、本編のセリフが聞こえなくなる、とかの場合には『音量均一化 - 平均』の-25dBでフィルタをかけることにした。

異なる形式でエンコードしていた動画の音声(mp3, aac, wma等)のボリュームがバラバラになってる場合、あるいはひとつの動画で音の高低差が激しい場合には、『音量均一化 - 平均』である程度音量を揃えることができる。

ある動画の音量を上げたい場合には『音声正規化(ノーマライズ) *』あるいは『音量均一化 - ピーク』を使用する。あまり下げたいというケースはないと思うけど、音量を下げたい場合も同様。出来上がる波形は若干違う(『音声正規化(ノーマライズ)』の方が丸みを帯びる)けど、聴いた限り違いは感じなかった。

『音声正規化(ノーマライズ)』あるいは『音量均一化 - ピーク』以上の音量にしたい場合、あるいは増幅させる音量の割合が決まっている場合に『音量変更(ボリューム)』を使用する。

* 本記事ではヘルプにある『音声正規化(ノーマライズ)』の『クリップ分割しているケース』に触れていない。

検証

素材はONE PIECEの次回予告の最初の部分で検証した。この約1秒の部分をwav形式出力でいくつかのパターンを出力してみた。

まず、ボリューム調整フィルタを使うと次の4パターンの音量調整を行うことができる。説明はほぼヘルプからの引用。またTMPGEnc-LABOも参考にした。

音量変更(ボリューム)
0~500%の間で音声のボリュームを変更する。現在のボリューム値に指定のパーセントをかけ算する。アルゴリズムなしで指定された割合音量を変化させる。そのため大きな値を指定すると思わぬところで音割れ(というのか分からないが、音が破裂したような音になる)が発生する。あんまり使わないオプションだと思う。特定の動画で微調整する時とか
音声正規化(ノーマライズ)
現在のソースの音声の最大音量を16bit音源で表現可能な範囲のどの位置(何パーセントの位置)に設定するかを指定する。100%を超える値の指定はできない。そのソース音声の最大音量を指定された%の位置にもってくるように音量が調整される。ソース音声に依存するため、ひとつでも爆発音のようなドでかい音があればそれが最大音量となってしまい、音量があまり上がらない可能性がある。逆に小さい音ばかりのソースであればその中で最大音量の音が最大音量となり、全体的に音の大きな結果となりうる可能性がある
音量均一化 - 平均
ソース音声から平均音量を計測し、その平均音量を -2dB~-36dB (デシベル)の間で設定。指定されるデシベル値は0dBを頂点とした16bit音声で再現できる音量であり、-6dBは再現可能音量の50%を中心とした音量の平均設定を指す。-12dBを超える設定(-2dB~-11dB)を行うと最大音量地点が再現可能な音量を超えてしまう場合がある。コンプレッサー処理により 0dB を超えないよう処理されるが音声のダイナミックレンジと音量は圧縮され、指定の値よりも低い結果となる場合がある。ソース音声の平均値の位置を指定するため、シリーズ物で音量をそろえるにはこのオプションしかない
音量均一化 - ピーク
ソース音声の最大音量を計測し、その音量を -2dB~-36dB の間で設定する。動作的には「音声正規化(ノーマライズ)」と同等で%表示かdB表示かの差となる。

見比べる

それぞれの設定で変換しAudacityで波形を見比べたところ、次のような違いがあった。

まずはソース音声

『音量変更(ボリューム)』と『音量均一化 - ピーク』は音声の波形に違いはなかった

↓『音量均一化 - ピーク』を-2dBを指定して作成した音声

↓『音量均一化 - ピーク』にてプレビュー用検索実行をして得られた割合(今回は181.87%)を『音量変更(ボリューム)』で指定

ただし『音量変更(ボリューム)』は『音量均一化 - ピーク』を超える音量に設定できる

音が壊れることはないが、破裂したような音になる。波形は上天井に張り付いた感じ。↓はボリューム500%

『音声正規化(ノーマライズ)』は『音量変更(ボリューム)』に比べ、より大きい音は丸められ音量が全体的に底上げされていた

今回は素材音声に対して音量を大きくする処理を行ったので『底上げ』と表現した。試していないが音量を下げる処理の場合は音量が全体的に『底下げ』されるが小さい音はあまり下がらないのでないかと思う

↓『音声正規化(ノーマライズ)』を100%で作成した音声

↓『音声正規化(ノーマライズ)』時にプレビュー用検索実行をして得られた割合(今回は299.33%)を『音量変更(ボリューム)』で指定。

ほとんど違いは分からないが拡大したりしてよく見ると『音声正規化(ノーマライズ)』の方が波が緩やかになっている(気がする

『音量均一化 - 平均』は『音声正規化(ノーマライズ)』よりも大きい音が削られる量が多く、底上げの量も大きかった

つまり『音声正規化(ノーマライズ)』よりもさらに音声がのっぺりしたように見える。またヘルプにあるように『-12dBを超える設定(-2dB~-11dB)』を指定した場合、音量を大きくするつもりが下がる現象も確認できた。

-2dB。最初に大きな音があるせいか、音量が全体的に低くなっている。この設定で動画をエンコードすると音の高低差が激しく感じる

-6dB。まだ低い

-9dB。このあたりで全体的な音量が最大になってる

-12dB。あとは相対的に音量が下がっていく

-18dB。ソース音声に近い音量だが、大きい音はより小さく、小さい音は変化なし/ほどほどに小さく/若干大きくなった(気がする

-25dB

今回は一部のみを切り取って音の波形のみを見比べてみたが、実際に聞き比べをしても違いは分からなかった。

PT2で普段録画しているものの音量の平均値を計った所、-23dBから-27dBの間であったので『音量均一化 - 平均』の-25dBでエンコードしているのだが、最初に問題としていた音の落差は無くなったと感じる。

見比べてみて

あまり自信はないけど『音声正規化(ノーマライズ)』はあまり波形を変えずに指定の値まで音量までを上下させ、『音量均一化 - 平均』は音量をある程度平坦にならす働きをしているのではないかと思う。『音量変更(ボリューム)』と『音量均一化 - ピーク』は全く波形を変えずにボリュームを変換しているように見えた、ただ『音量変更(ボリューム)』は限界値を超えることができるのでその時はその超えた部分が圧縮される。

デシベル(dB)

少しデシベル(dB)について解説。Wikipediaより。

  • 音強; 音の強さ(物理量)は、デシベル(dB)で表す
  • デシベル(dB)とは、音の強さ(音圧レベル)や、電力の比較、減衰量などをエネルギーで表すのに使用される
  • 工学では慣習により絶対基準値を定めて絶対単位として使うことが広く行われている

『エネルギー比』とあるようにデシベルとは音などの物理量を相対的に表す単位。ただ、相対的といっても、どこかに基準がなければその量が測れなくなる。TMPGEncのヘルプによれば『指定されるデシベル値は0dBを頂点とした16bit音声で再現できる音量』とある。つまり0dBを最大音量と位置させ、そこを絶対基準点として指定されたデシベル値分下げていくことになる。つまりあるデシベル値は最大音量からの絶対値となる。

下記は-2dBから-36dBまでの倍率に100をかけた数値をグラフにしたもの。例えば、ヘルプにもあるとおり-6dBは50%の音量となる。-2dBはだいたい最大音量の80%くらい。

私が現在使っている平均値としての-25dBは71dB(96-25dB)で『騒々しい街中』程度らしい、最大音量から比べ5.6%程度なんだけど、そんなに小さい値じゃないって事みたい。

16bit音声とはJavaで言うshort型、つまり-32,768から32,767(あるいは0から65,535)までの65,536段階で表される音声。

CDの音質が16bitのようで、CDが持つダイナミックレンジは約96dBであるとのこと。上記式に当てはめて計算すると、96dB(正確には96.3dB)が16bitを超えない倍率となった(Excel式: =1/10^(-96.3/20))。

音声圧縮との違い

なんか似た話題なので少しだけ。ボリュームの調整は先ほど見た波形を操作すること、大きいところが音量が高く、小さいところが小さい音となっている。それとは別に音声には周波数というものがある。

周波数は低い値が低音を表し、高い値が高音を表す。つまり、より高い周波数ほど品質がいい。音声圧縮方式であるMP3は人には聞こえない高周波数の音をばっさりと削除するのに対して、AACというコーデックは、高音、低音関係なく人が聞きにくい音を探し出してカット(圧縮)するという違いがある。そのためAACの方が音質の劣化が少ないとされている。

TMPGEncにはイコライザ的な周波数をどうこうするフィルタはないようであるが、サンプリング周波数の変換を行うことができる。また、TMPGEncでよくみかけるmp3やaacのコーデックがそれ自体で音声圧縮(非可逆圧縮、不可逆圧縮)を行い、特定の周波数帯の音声を削って圧縮を実現している(削っちゃうので復元できないため、不可逆な圧縮となる)。

サンプリングレート(周波数)は普段からiPhone用に変換している身としては48,000Hz以外に特に選択肢はない(iPadについても第三世代現在では同様)。

というのは、DVDやPT2で録画した動画(.ts)のサンプリングレートは48,000Hzであり、普段動画を視聴しているiPhoneのサンプリング周波数の制限値は48,000Hzだから下げる必要性がない。ちなみに値が高い方が音がくっきり聞こえるらしい。また、44,100HzというのはCDで使われている周波数とのこと。

Blu-rayでみかけるドルビーTrueHD, DTS-HD Master Audioなどの音声規格(どちらも可逆圧縮)であれば最高192KHzまでの周波数に対応しているが、iPhoneで視聴する用の動画向けには48,000Hzまで変換して落とす必要がある。

iPhoneとかiPadの技術仕様については過去の記事; TMPGEnc Video Mastering Works 5 - iPhone4用出力テンプレートをご参照下さい。

関連記事
タグ:TMPGEnc Blu-ray mp4
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。