ならば

音とかで遊んでいたログ

音のストロボ効果

ストロボ効果とは、周期的な動きをある間隔でサンプリングした場合に起こる視覚現象のこと。例えば、走っている車を映した映像でホイールが逆回転しているように見えることがあるのはこの現象。

同じようなことは聴覚でも考えられる。

ただ、普通は扱う音に対してサンプリング周波数が充分に大きいので、視覚ほどはっきりと分かる形で現れることはあまり多くないのだと思う。デジタル録音で一般的なサンプリング周波数のひとつは44.1kHzだけど、この半分の周波数の音はヒトの可聴域の上限を超えたあたりである。

というわけで、あえてサンプリング周波数をかなり低くして、はっきり分かるように音のストロボ効果を起こしてみた。実世界で鳴っている音の録音ではなくて、SuperColliderで生成する音でサンプリング周波数を変えて実験。

   

やっていること。なお、スクリーンキャプチャ時の録音のサンプリング周波数は48kHz。

  1. サンプリング周波数44.1kHzで、1200Hzのサイン波を鳴らす。
    この場合は、1200Hzはナイキスト周波数以下なので折り返し雑音も発生せず1200Hzの高さの音が流れる。
  2. サンプリング周波数を1200Hzに変更して、1200Hzのサイン波を鳴らす。
    音響信号をサンプリングすると、いつも同じ値しか得られないため振幅のある波にならない。その結果、音が全く鳴らない。
    視覚現象で車のホイールが回転していないように見える現象に相当する。
  3. サンプリング周波数1200Hzで、1400Hzのサイン波を鳴らす。
    音響信号をサンプリングすると、波の高さがずれていく。角周波数は 2π*(1400-1200) なので、200Hzの高さの音が流れる。
    視覚現象で車のホイールが実際よりゆっくり回転しているように見える現象に相当する。
  4. サンプリング周波数1200Hzで、1000Hzのサイン波を鳴らす。
    音響信号をサンプリングすると、波の高さがずれていく。角周波数は 2π*(1000-1200) なので、200Hzの高さの音が流れる。ただし、角周波数が負なので、波の進行は逆になる。
    視覚現象で車のホイールが逆回転しているように見える現象に相当する。
  5. サンプリング周波数1200Hzで、200Hzのサイン波を鳴らす。
    この場合は、200Hzはナイキスト周波数以下なので折り返し雑音も発生せず200Hzの高さの音が流れる。

3と4について大雑把な図を描いた。
青い波が音の波。背景の薄い波はサンプリング周波数を持つサイン波で、破線の垂直線のタイミングで音の波がサンプリングされる。
   



標本化定理のお勉強だった。もっと楽しげなことに応用したい。