音の標本化周波数と量子化ビット数を変えてみた

情報のディジタル化

こんにちは。今回は突然ですが、音のデジタル化についての内容です。

念のための音のデジタル化

音のデジタル化は「標本化」「量子化」「符号化」の3つの手順によりされています。それぞれについて確認してみます。次の音の波形について考えていきます。

上の波形を一定の時間ごとに区切ります。これを「標本化」といい、分割する周波数を「標本化周波数」といいます。標本化した結果、次のようになります。

次に、それぞれ時間ごとの波の高さを、段階に区切って整数化します。これを「量子化」といいます。量子化した際に、段階との差が生じる場合があります。これを「量子化」誤差といいます。

量子化された値を2進法に変換し、ビット列で表現します。これを「符号化」といいます。

CD音源では、標本化周波数は44100Hz、量子化ビット数は16bit(65536段階)となっています。

というような説明が書籍等に載っています。ここで、ふとした疑問が生じました。「標本化周波数を変えたり、量子化ビット数を変えるとどのような音になるのだろうか・・・?」音を編集するソフトでは、実用に耐える範囲でしかこれらの値を変更できないので、音としての実用性がないレベルまで変えてみよう!と思い立ったのが、今回の記事の本題になります。

標本化周波数を変えてみる

はじめに標本化周波数を変えてみます。音源はフリーBGM素材サイト「DOVA-SYNDOROME」から「Cat life」(written by GT-K)という曲を使わせていただきます。水溜りボンドさんのBGMといった方がわかりやすいかもしれません。アイキャッチ画像はこの曲名から選びました。量子化ビット数は16bitに固定します。標本化周波数によってはブラウザから再生できないものもあるので、リンク先のURLを貼っておきます。ダウンロードしてメディアプレーヤーなどのソフトで試してください。

元の音源(出だし20秒)は次になります。標本化周波数44100Hzです。

https://joho-ka.mints.ne.jp/wp-content/uploads/2019/05/sampling_44100.wav

次は、標本化周波数22050Hzになります。

https://joho-ka.mints.ne.jp/wp-content/uploads/2019/05/sampling_22050.wav

次は、標本化周波数8000Hzになります。

https://joho-ka.mints.ne.jp/wp-content/uploads/2019/05/sampling_8000.wav

次は、標本化周波数2000Hzになります。ブラウザ上からは音が出ないかもしれません。ダウンロードして聞いてください。

https://joho-ka.mints.ne.jp/wp-content/uploads/2019/05/sampling_2000.wav

次は、標本化周波数1000Hzになります。ブラウザ上からは音が出ないかもしれません。ダウンロードして聞いてください。

https://joho-ka.mints.ne.jp/wp-content/uploads/2019/05/sampling_1000.wav

次は、標本化周波数500Hzになります。ブラウザ上からは音が出ないかもしれません。ダウンロードして聞いてください。

https://joho-ka.mints.ne.jp/wp-content/uploads/2019/05/sampling_500.wav

次は、標本化周波数200Hzになります。ブラウザ上からは音が出ないかもしれません。ダウンロードして聞いてください。

https://joho-ka.mints.ne.jp/wp-content/uploads/2019/05/sampling_200.wav

イヤホンで聞いていたら不快な低周波が鼓膜を揺らすので、このあたりでやめることにします。

量子化ビット数を変えてみる

次に量子化ビット数を変えていきます。標本化周波数は44100Hzに固定します。

はじめは、量子化を16bit(65536段階)で表現した音になります。

次に、量子化を8bit(256段階)で表現した音になります。

次に、量子化を4bit(16段階)で表現した音になります。このあたりから音量に注意してください。

次に、量子化を2bit(4段階)で表現した音になります。もちろん音量に注意です。

最後に、量子化を1bit(2段階)で表現した音になります。音量には細心の注意を払ってください。

本当に2段階になっているかをAudacityで波形を確認してみます。

音を加工するのに使ったプログラムは次回紹介しますが、段階を減らすのにビットでマスクをかけたので、元の値が0または正の値だったときは0、負の値だったときは-1に収斂して2段階になっています。

今回はこれでおしまいにします。それではまた。

Posted by 春日井 優