問題文「音声を標本化周波数10kHz、量子化ビット数16ビットで4秒間サンプリングして音声データを取得した。この音声データを、圧縮率1/4のADPCMを用いて圧縮したデータ量は何kバイトか。ここで、1kバイトは1,000バイトとする。」
解答群
ア. 10
イ. 20
ウ. 80
エ. 160
はっきり言って全く用語がわからないため、応用情報技術者試験ドットコムさんの解説を見ても全然わからなかった。
そこで、まずは用語の1つ目を検索・・・と、ほとんどの用語が開設されたサイトさんを発見した。
Soraoto Webサイトさんの「サンプリング周波数と量子化ビット」というページである。
ここを見ればほぼ完ぺきに音声をデジタルデータ変換する方法について解説してくれている。
しかしだ、ここを見れっ( ゚Д゚) と書くだけでは全く俺がこのページを書いている意味がなくなるので、さらに意訳して解説すると以下のようになる。
標本化周波数 ⇒ 1秒間にどのくらいの数のデータを取るか。丁度テレビのコマ数(15フレーム毎秒)のように、1秒間に15回データ(ここで言うサンプル/標本)を録るならば15Hzとなるらしい。
量子化ビット数 ⇒ 標本化周波数が1秒間に何回サンプルを録るか?を表しているならば、量子化ビット数は1回のサンプルで何段階の音として記録するか?ということらしい。
ここで本気で訳がわからないのが、標本化周波数は音の高さを表現しているらしく、量子化ビット数は音の大きさを表していることであるが、時間を短く区切って何故に音の高さを表現できるのだろうか?
上の疑問を考え始めると長くなるのと、まあ上の例だけで問題は解けそうなので後日の課題として残したまま問題を解きたいと思う。
標本化周波数は10kHz、量子化ビット数16ビットなので、1秒間に10,000個の16ビットのデータがある、ということになる。
それを4秒間取得したわけだから、640,000ビットのデータがあるわけだ。
これを圧縮率1/4のADPCMを用いて・・・
なんでも略すのいくないっ( ゚Д゚)
ADPCMとはAdaptive Differential Pulse Code Modulationの略だそうだ。そして、PCMというのがPulse Code Modulationの略で、上の標本化周波数と量子化ビットを使ったアナログ信号のデジタル化を指しているらしい。
じゃあ、AD(Adaptive Differential)の部分はなんだ?という話だが、どうやら「自然界の音は連続していることが多いので、前のタイミングとの差をデータ化することで圧縮する技術」と言う風に見える。(出典:e-Words「ADPCM」より)
つまりその技術を使って4分の1に圧縮するということだ。
なので、640,000ビットのデータを4分の1に圧縮するので、データ量は160,000ビットとなる。設問は「何kバイトか?」を問うているので
160,000÷8÷1,000=20(kByte)
これで問題は解けるのは解けるが・・・ 一体周波数と時間の関係って・・・?
高校の時の物理を真剣に勉強しておくべきだった・・・orz
0 件のコメント:
コメントを投稿