音声はどのようにデジタル化されるのか|標本化・量子化・符号化の基礎

音声のデジタル化は、標本化→量子化→符号化の順に、連続した信号をビット列へ変える処理です。標本化で一定間隔の値を取り、量子化で振幅を有限の段階に対応させ、符号化でその段階を0と1の組み合わせで表します。標本化は時間、量子化は振幅、符号化は値の表現を扱います。

本記事では、3段階の違いと順番を図で確認し、等間隔の振幅目盛りを使うリニアPCMの計算例と、電話に使われるG.711との違いを説明します。図は原理を示す模式図で、実際の通話の測定結果ではありません。

1. 標本化・量子化・符号化の違いと順番

声は空気の圧力の変化です。マイクはこの変化を電圧の変化に変換します。電圧は時間とともに連続して変化しますが、コンピューターで保存・処理するには、有限の桁数を持つ数値として表す必要があります。

アナログ信号をデジタル信号に変換する回路を、A/D変換器(ADC)と呼びます。入力段で信号の大きさや周波数の範囲を整えたうえで、次の処理を行います。

工程 何をするか 違いを表す軸
標本化 一定の時間間隔で音声信号の値を取り出す 時間:いつ読み取るか
量子化 取り出した値を有限の振幅の段階に対応させる 振幅:どの段階で表すか
符号化 量子化した段階を0と1のビット列で表す 表現:どの符号を割り当てるか
3工程は標本化→量子化→符号化の順です。後の節で図と計算例を確認できます。

PCM(Pulse Code Modulation:パルス符号変調)は、このように音声を標本ごとの符号として表す方式です。音声データをネットワーク送信用のパケットにまとめる処理は、このデジタル化とは区別して考えます。

標本化で波形から一定間隔の値を取り出し、量子化で振幅の段階に丸め、符号化で0と1に対応させる模式図。
図1:デジタル化の3段階。標本化は時間方向、量子化は振幅方向を扱います。右側の符号は対応例です。

2. 標本化:時間方向を一定の間隔で区切る

標本化はサンプリングとも呼ばれます。波形上の値を一定の間隔で読み取り、一つずつの値を「標本」または「サンプル」として扱います。1秒間に取り出す標本の数が、サンプリング周波数です。

例えば8 kHzなら、1秒間に8,000回、信号の値を取り出します。標本の間隔は、次の計算で求められます。

標本の間隔 = 1 ÷ サンプリング周波数
8 kHzの場合:1 ÷ 8,000 = 0.000125秒 = 0.125ミリ秒

16 kHzでは標本の間隔は0.0625ミリ秒になります。ただし、標本を多く取ることと、振幅を細かく表すことは別です。前者がサンプリング周波数、後者が次節の量子化に関係します。

音の周波数と読み取り回数を混同しないために、音声帯域とサンプリング周波数の違いも確認しておくと、端末や録音の仕様を読みやすくなります。

扱える音の周波数には条件がある

通常の音声のように低い周波数から扱う場合、信号の最高周波数をサンプリング周波数の半分未満に制限する必要があります。例えば8 kHzで標本化するなら、4 kHz以上の成分をそのまま入力してよいわけではありません。

この条件から外れた成分が入ると、本来とは異なる低い周波数の成分として現れることがあります。これが折り返し(エイリアシング)です。防ぐために、A/D変換の前で不要な高周波成分を抑えるアンチエイリアシングフィルターを使います。実際のフィルターには移行帯域があるため、上限を単純に「半分まで」と考えず、余裕を含めて設計します。参考:Texas Instrumentsの標本化・折り返しの解説

3. 量子化:振幅を決められた段階に置き換える

標本化だけでは、取り出した値の振幅はまだ連続的な値です。量子化では、これをあらかじめ用意した段階のいずれかに対応させます。リニアPCMでは、この段階を等間隔に配置します。

例として、振幅を0から7までの8段階で表す簡略化した方式を考えます。入力の値が2.3なら2、5.7なら6のように、最も近い段階へ丸めます。元の値と丸めた値の差が量子化誤差です。図では仕組みを見やすくするため3ビットを使いますが、実用の音声信号を推奨する設定ではありません。

3ビットの説明例。2.3を段階2と符号010、5.7を段階6と符号110、4.8を段階5と符号101に対応させる。
図2:丸める前後の差が量子化誤差です。0〜7は説明用の段階番号で、実際の音声の符号対応とは異なります。

1標本にbビットを割り当てると、表せる符号の組み合わせは2のb乗です。3ビットなら8通り、16ビットなら65,536通りになります。同じ振幅範囲のリニアPCMなら、ビット数が多いほど段階を細かくできます。

ただし、ビット数を増やしても、マイクで混入した雑音や入力段ですでに生じたひずみが消えるわけではありません。また、表せる範囲を超えた入力は上限・下限に制限され、波形がつぶれるクリッピングの原因になります。量子化の細かさと、入力レベルの適切さは別々に確認する必要があります。

4. 符号化:量子化した値を0と1で表す

図の簡略化した方式では、段階2を「010」、段階6を「110」と表せます。こうした符号を標本の順番に並べることで、音声をビット列として保存・伝送できます。実際の音声には正負の振幅があり、符号と振幅の対応は採用する方式に従います。図の0〜7は説明用の段階番号です。

受信側では符号から標本の値を読み出します。スピーカーで再生するときはD/A変換と再構成のためのフィルターを経て、連続した電気信号として出力します。図で量子化後の値を階段状に描くことがあっても、「階段の形のまま耳に届く」という意味ではありません。

なお、ここでいう符号化は、必ずしもデータの圧縮を意味しません。リニアPCMのように標本を固定長の符号で表す方法もあれば、音声の性質を利用して情報量を減らす音声コーデックもあります。

電話で使う符号化方式を比較したい場合は、G.711・G.729・Opusの違いをご覧ください。必要な帯域や接続先との互換性も含めて整理しています。

5. データ量はどう計算するのか

各標本を一定のビット数で表すPCMでは、音声データ部分のビットレートを次の式で求められます。

ビットレート = サンプリング周波数 × 1標本のビット数 × チャンネル数

16 kHz・16ビット・モノラル(1チャンネル)のリニアPCMなら、16,000 × 16 × 1 = 256,000 bit/s、すなわち256 kbit/sです。本記事では1 kbit/s=1,000 bit/sとします。

項目 リニアPCMの例 G.711
サンプリング周波数 16 kHz 8 kHz
1標本の符号長 16ビット 8ビット
チャンネル数 1 1
音声データのビットレート 256 kbit/s 64 kbit/s
振幅の表し方 等間隔の量子化 A-lawまたはμ-lawによる非線形PCM
数値は音声データ部分の比較です。通話の総合的な品質の優劣を示す表ではありません。

G.711の「8ビット」はリニアPCMと同じ意味ではない

電話で使われるG.711は、8,000標本/秒、1標本8ビットなので、音声データ部分は64 kbit/sになります。ただし、振幅の表し方にはA-lawまたはμ-lawという非線形の方式を使います。小さな振幅を相対的に細かく扱うため、等間隔で256段階に分ける8ビットのリニアPCMと同一ではありません。参考:ITU-T G.711

二つの符号化規則と接続時の確認項目は、G.711のμ-lawとA-lawの違いで解説しています。

また、64 kbit/sは回線上の全データ量ではありません。IP電話では音声に加えてRTP・UDP・IPなどのヘッダーが必要です。パケット化の間隔や通信方式によって付加される量も変わるため、回線設計ではこれらを含めて計算します。

6. 通話品質への影響をどう切り分けるか

音声が聞き取りにくい場合、サンプリング周波数やビット数だけを見ても原因は判断できません。まず、品質が変わる可能性のある場所を分けて考えます。

  • 入力:マイクの位置、周囲の騒音、入力レベル。デジタル化前の雑音やクリッピングを確認します。
  • デジタル化・変換:サンプリング周波数、符号化方式、途中の形式変換。端末から録音までの各区間で仕様を確認します。
  • 伝送・再生:パケット損失、到着間隔のばらつき、再生機器など。デジタル化の設定とは別の要因として調べます。

例えば、8 kHzの音声を後から16 kHzに変換しても、元の音声に含まれていなかった高い周波数の情報が復元されるわけではありません。ファイルに記録されたサンプリング周波数だけで、通話全体の音声帯域を判断しないことが大切です。

仕組みの理解から実際の評価へ進む際は、MOS・PESQ・POLQAによる音声品質評価で、何をどの条件で測るかを確認できます。

最初に確認する3項目

  1. 形式を確認する:録音ファイルのサンプリング周波数・符号化方式・チャンネル数を調べます。通話側では実際に使用したコーデックも確認し、録音形式と区別します。
  2. 波形と聴感を照合する:音が割れる箇所で、波形の上端・下端がつぶれていないかを見ます。波形だけで原因を断定せず、入力設定と照合します。
  3. 比較条件をそろえる:同じ発話内容、同じ入力レベル、同じ収録箇所で比較します。複数の条件を同時に変えると、どの変更が効いたのか分からなくなります。

7. 設計・運用で押さえるポイント

標本化は「時間方向の間隔」、量子化は「振幅方向の細かさ」、符号化は「値の表し方」を決めます。この3つを区別すると、音声の仕様書や設定画面を読みやすくなります。

システム設計では、必要な音声帯域に加え、接続先との対応形式、途中の変換、ネットワークの必要帯域を確認します。運用では設定値だけで良否を決めず、実際の通話・録音・測定結果を合わせて評価してください。

基礎を学んだ次は、実際の通話で音声がどう変わるかを確かめます。Software AGDによる音声品質評価で測定方法を確認し、端末・回線・変換区間のどこを比べるか迷う場合は、CCアーキテクトへ音声品質の測定位置と比較条件を相談するからお問い合わせください。

よくある質問

標本化と量子化は何が違いますか?

標本化は時間を一定間隔で区切って値を取り出し、量子化はその値を有限の振幅段階に対応させます。サンプリング周波数と1標本のビット数は、異なる条件を表します。

PCMとG.711は同じものですか?

PCMは標本ごとの値を符号で表す方式の総称で、G.711は電話音声に使うPCMの規格です。G.711はA-lawまたはμ-lawを使うため、等間隔に振幅を分けるリニアPCMとは区別します。

参考規格・資料

コンタクトセンターの品質・負荷試験についてご相談ください Genesys Cloud / Amazon Connect / Cyara に対応
無料相談・お問い合わせ