前回の記事
Youtubeに高音質でアップロードする方法 2017年6月
が肥大化してきたので リミッター だけここに書きます。

Youtubeには圧縮音源ではなく圧縮を一度もされていない
新鮮なLPCMをアップロードするべきだというのは先の記事で
推奨したとおりです。
録音するるにあたりデジタルのビットを有効に使うには
レベルがクリップしない程度に録音レベルを上げるのは
アナログ時代からの鉄則です。ところが
以前の記事で書いたようにWindowsのWASAPI共有モードにおいては
再生時に-0.13dB以上はリミッターがかかります。
今回の記事ではYoutube の Opus の再生に焦点を当てます。


【やったこと】
①12.5kHzの正弦波の24Bit PCM形式ファイルを作成します。
 レベルは-3dB~0dBまで取り揃えます。
-----------------------------------------
Time            Level            THD
            WS実測値(波形高)
-----------------------------------------
0:00~0:15  -3.63dB(-3.0dB)  0.00000% 
0:15~0:29  -1.63dB(-1.0dB)  0.00000% 
0:32~0:44  -1.13dB(-0.5dB)  0.00000% 
0:45~1:01  -0.83dB(-0.2dB)  0.00000% 
1:02~1:16  -0.73dB(-0.1dB)  0.00000%
1:17~1:47  -0.63dB(   0dB)  0.00000% 
-----------------------------------------
イメージ 1

②Youtubeに4K映像としてアップロードします

③1時間ほど待ってブラウザで251(Opus)を再生します
 これをデジタル録音モニター(WaveSpectra)して録音レベルがちゃんと
 リニアに記録されているか確認します。※Windowsのリミッターは事前に解除しておくこと
イメージ 2
THDは劣化していません一安心です(圧縮に伴い12.5kH以外の成分も増える。ディザ?)

再生結果】
-0.5dB以上のレベルは 再生時に リミッターが効いてリニアリティが失われます。
0dBを突っ込んだ場所では-1dB以上下げられます。
イメージ 3
※WavGeneでの指定が0dBだったのに、24BitのWavにしてWaveSpectraで開くと
 実測値が-0.63dBと表示されるのでレベルがダウンしているように見えますが・・・・
 気のせいです。Opusの再生でも同じ。波形エディタでみると 0dBまで振れてます。
 ですので WaveSpectraの実測値(測定画面の左上の dB表示)は波形高を
 測定しているのではなく周波数成分をみている・・・
 というわけで、WaveSpectra実測値 -0.63dB は 波形高0dB と読み替えます。
 波形高で -0.5dB以上になると Chrome再生ではリニアリティが失われますね。

【Opusファイル】
YoutubeサーバーからOpusをダウンロードしてWave化して確認します。
驚いたことにOpusファイルはオリジナルのWavと同じ -3~0dB の レベルを保持しています。
※24Bitと違い、16BitなのでWaveSpectraの実測値(画面左上)と波形高が一致しています。読み替え不要。
イメージ 4


【結論】
Opusは 0dB も記録してくれるのですが、再生側の環境を考慮して、
アップロードするファイルの最大レベルは-0.5dB以下に抑えましょう。
逆にいえば -0.5dBにノーマライズ しましょう。


おしまい