レイテンシー

レイテンシーについて書いてみます。

レイテンシーは小さいほど録音や再生時に
遅延による違和感を覚えなくなりますが、
レイテンシーを小さくするとプチプチノイズが
発生したり音が途切れたりします。

なぜこの様なことが発生するのでしょうか。

rei1.gif
上の図は簡単なイメージです。

CPUの処理が遅いのでバッファを大きめにとり、
CPUの処理遅れによる音の途切れを防いでいます。

その分バッファに溜まった分が音の遅れ、
いわゆるレイテンシーとなります。

転送エラーやCPUからのデータ送信が追いつかないと
音が途切れる現象として聞こえる場合があります。

これはUSBの転送がエラーがあっても再送信しない
アイソクロナスのモードで動作しているからなのですが、
影響がある単位が1ms単位なのでこれを耳が感知できるか否かは
別問題ですが連続で発生すれば判ると思います。

rei2.gif
今度はCPUの処理速度が速いので
バッファ容量が小さくても
PCから次々に転送されてくるイメージです。

バッファが小さいのでレイテンシーも小さくて済みます。
ここで問題となるのが赤丸で囲んだ部分です。

バッファ要領を小さくしているので
次から次にデータを送らねばなりません。

ここがドライバの影響を受ける部分です。

ASIOドライバの出来が良くないと、
CPUが処理して送るデータに遅延が発生したり、
時にはドライバの影響でフリーズすることもあります。

ドライバの設定ではサンプル数とバッファ容量の
2つの設定でレイテンシーの調整をするものもあります。

バッファ容量とレイテンシーの関係は先のイメージに
なりますが、サンプル数とはどのようなものなのでしょうか。

44.1kHz/16bitでは
1秒間に44,100回サンプリングし、その音を65,536段階で記録しています。
記録できる高域の上限は22kHzでダイナミックレンジは96dBです。

CD-DAでは高域の上限が20kHzですが、ナイキスト周波数
LPFを掛けた時のフィルターマージンも考慮されての規格でしょう。

1秒間に44,100回サンプリングしているということは、
「1秒=1000ms」なので1サンプルは0.022675737msとなります。

ドライバの設定で256サンプルとあれば、
0.022675737ms×256サンプル=5.804988662ms
この部分だけで約5.8msのレイテンシーとなります。

1サンプルは音量を16bit(65,536段階)で記録しているので、
1サンプルあたり2Byteのバッファ容量が必要になります。

256サンプルに設定するなら、
2byte×256サンプル×2ch=1024byte
24bitなら3byteなので1536byteのバッファ容量となります。

逆で計算するとレイテンシーが11msであれば512サンプル分に
相当するので、44.1kHz/16bitであればバッファは2048byteと
なります。

実際はUSB転送に係るデータが加えられて、
データ量は増えると思いますが、
イメージとしてはこんな感じです。(^^)

レイテンシーとドライバの関係が理解できれば、
レイテンシーを小さくする際に何かの参考になるかも知れません。



シェアする



コメント

  1. mar より:

    SECRET: 0
    PASS: 74be16979710d4c4e7c6647856088456
    どうも初めてコメントさせて頂きます、marでございます。
    こんばんは。
    レイテンシー…
    私は録音した後でエフェクトかけるので、ダイレクトモニタリング機能がないと不安でございます…
    昔はMICに直で録音していた事もあり、、かなり大変でした(笑)

  2. REACHrh より:

    SECRET: 0
    PASS: 74be16979710d4c4e7c6647856088456
    こんばむは
    私 まさに レイテンシーを少なくするためバッファサイズ小さくしてたのですが 何度も 
    予期せぬ問題が発生したため???を終了します て なって
    データばっくり消えて もう具合悪くなったりしてます 笑
    バッファサイズを小さくしてもPC買いたてのときは大丈夫だったのですが
    (断片の最適化的なことはサポートに問い合わせてしましたがあまり変化なし)
    最近は 録音トラック以外全てDryにしても固まるので
    結局ダイレクトモニターで録音してますが
    やりずらくて仕方ありません 
    メモリ4Gから 8Gにしたいなあと思ってます
    現在のスペックでは 完全にMTR録音より不自由です 笑
    少しづつでも改善していこうと思ってます……

  3. MOMODON より:

    SECRET: 0
    PASS: 74be16979710d4c4e7c6647856088456
    mar さん、こんばんは。
    コメントありがとうございます。(^^)
    いま使っているUR28Mは内臓DSPを使用した
    エフェクトでダイレクトモニタリングできるのですが、
    この便利さを知ってしまうと・・・・笑
    いっそのことコンプやリバーブだけでなく
    ギターエフェクトも内臓して欲しいと思います。(^^)
    今後とも宜しくお願い致します。[絵文字:v-218]

  4. MOMODON より:

    SECRET: 0
    PASS: 74be16979710d4c4e7c6647856088456
    REACHrh さん、こんばんは。
    私も最初はレイテンシーを詰めていても
    PCを使用しているうちに緩くしないと
    ダメになってしまいます。
    そこで数年前から半年に一度PCの再セットアップを行って
    PCをリフレッシュしています。
    手間ではありますが、これが一番効果的でした。
    私はリズム音痴なのでレイテンシーが大きいと
    荒がが目立ってしかたないのです。(^^;