要約
- RFC 3389 は発話のない区間で通常の音声パケットを止め、一バイトの雑音レベルと任意のスペクトル係数だけを送る共通形式を定めた。
- 聞こえる背景音は受信側が生成するため、CN パケットの到着は雑音モデルの伝達を示しても、遠隔の部屋が録音され忠実に再現されたことまでは示さない。
人が話すのをやめた瞬間、通話が完全な無音になると不安を感じる。現実の部屋には空調、マイク回路、建物の振動、遠い交通音が残る。それらが一斉に消えると、静けさよりも回線断に聞こえる。利用者が「まだいますか」と尋ねるのは、通信が効率化されたからではなく、存在の手掛かりが消えたからだ。
しかし、その手掛かりを守るために室内雑音の全サンプルを送り続ければ、無音抑圧の利点は失われる。パケット音声が選んだ方法は、音そのものを運ぶのではなく、背景の特徴を短く記述し、相手側で似た環境音を作らせることだった。
2002 年 9 月に標準化過程の文書として公開された RFC 3389 は、この受け渡しを RTP の形式として定義した。対象は、G.711、G.726、G.727、G.728、G.722 など、コーデック内部にコンフォートノイズ機能を持たない方式である。仕様は音響処理全体の統一を目指さず、独立した端点が共有すべき最小部分に絞った。
送信側では音声活動検出が入力を発話区間と非発話区間に分類する。間欠送信の処理が通常パケットをいつ止め、雑音情報をいつ更新するかを決める。受信側では生成器が受け取った値から可聴信号を作る。RFC 3389 は VAD、DTX、雑音分析、雑音合成の具体的アルゴリズムを規定していない。
共通部分は一オクテットから始まる。コンフォートノイズの負荷は SID、すなわち無音挿入記述子とも呼ばれる。最初のバイトの下位七ビットは、デジタル過負荷点を基準にした負のデシベル値を 0 から 127 で表す。最上位ビットは未使用で、必ずゼロにする。0 は 0 dBov、127 は −127 dBov を意味する。
これは部屋の一瞬を切り取ったサンプルではない。あくまでレベルの記述である。同じ値を受け取った二台の装置が、異なる乱数系列やフィルターを使って別々の波形を出しても、形式上は矛盾しない。意味を共有することと、音を同一にすることは別の仕事だ。
後続バイトには量子化された反射係数を置ける。全極モデルのスペクトル包絡を表す情報であり、その個数、つまりモデル次数は別フィールドではなく負荷長から分かる。符号化側は品質、計算量、予想される環境雑音、帯域幅に応じて次数を選べる。復号側は高次係数をゼロにして計算を軽くしてもよい。
この拡張は、レベル一バイトしか理解しない旧形式との互換性を保った。古い受信機は先頭だけを読み、追加のスペクトル情報を無視できる。通信は成立するが、生成される音色の情報量は少ない。「受理した」という事実から「同じ豊かさで解釈した」と推定することはできない。
RTP では CN を小さな独立コーデックのように扱う。タイムスタンプはコンフォートノイズ区間の開始を示し、マーカービットは立てないのが原則である。長さが可変なので、一つの RTP パケットには各チャネルにつき正確に一つの CN 負荷を入れる。複数チャネルを収容する場合は、すべて同じスペクトル次数を用いる。
静的ペイロードタイプ 13 の意味にも境界がある。CN を表すのは RTP クロックが 8000 Hz の場合だけだ。別の周波数なら動的タイプを割り当て、CN/16000 のように関連付けを通知しなければならない。13 という数字だけでは、周波数の違うセッションを解釈する権限は得られない。
非発話区間に入ると、送信側は同じ RTP ストリームに CN パケットを送る。その後の更新頻度は実装に委ねられた。一定間隔で送っても、背景特性が大きく変わった時だけ送ってもよい。受信側は更新の間、最後のモデルと自らの合成方法で音を継続する。
ここには区別すべき証拠がいくつもある。VAD の判定は「この装置が非発話と見なした」ことを示す。DTX は通常フレームを止める決定である。SID はレベルと任意のスペクトルを表す。受信処理はそれを局所的な波形へ変える。利用者の感覚は、さらに別の観測だ。一段前の記録だけで次の結果を証明することはできない。
パケットが見えない区間も、それだけでは正常なコンフォートノイズ動作を示さない。RFC 3389 の SDP 説明は、CN タイプを提示しなくても無音抑圧は起こり得ると明記する。RTP はどの音声形式でも間欠送信を許す。次のパケットでシーケンス番号が一つだけ進み、タイムスタンプが大きく飛べば省略区間を推測できる。しかし損失や障害も空白を作る。交渉内容と端点の状態を合わせて確認する必要がある。
後年の RFC 6263 は CN パケットを NAT の経路維持に使う可能性を検討した。同時に、相手が CN を支援し、通知によって合意していなければならず、受信側が実際に雑音として再生する可能性も警告した。ネットワークを保つための信号が人に聞こえるなら、レベル選択は運用上の責任になる。
RFC 6465 は RTP 音声レベル拡張で同じ −dBov の尺度を用いた。尺度の再利用は実装を助けるが、主張を同一にはしない。音声レベル拡張は送られているメディアの強さを報告する。SID は発話フレームがない期間に、受信機が新しい音を作るための材料を渡す。
Lu Heng の最小初期仕様という考え方から見ると、この境界は意図的に薄い。レベル、任意係数、格納順序、開始時刻、チャネル、負荷名、クロックの意味は共通でなければ相互運用できない。一方、検出精度や更新戦略、合成品質は各参加者の実行コードで改善できる。新しい生成法のたびに共通の許可を求める必要はない。
実行コード優先の原則は、文書の限界も示す。RFC が存在しても、弱い発話が切られなかったことや、背景音が自然だったことは証明されない。具体的な装置が動き、出力が測定され、人が聴いた時に初めて結果の証拠が生まれる。標準は協調条件を作るが、知覚結果を宣言するものではない。
RFC 3389 が運んだものは、音より少なく、無より多かった。遠隔の部屋はネットワークを通らない。通ったのは小さなモデルであり、もう一方の端点がそれを材料に別の部屋の響きを組み立てた。音声パケットが止まっても、物理的な部屋は静まらない。そして利用者が聞く部屋は、受信機の中で新しく生まれる。
出典
会員向け解説
プロフィールの詳細
適切な会員レベルでログインすると、解説全文と出典メモをご覧いただけます。
Strategic Circle 限定
Strategic Circle
すべての読者に公開されています。参加してログインすると プロフィール解説 を閲覧できます。
Strategic Circle に参加Leadership Alliance 会員限定
Leadership Alliance
対象となる IP 資産の所有者・管理者向けです。ログインすると Leadership Alliance の解説を閲覧できます。
Leadership Alliance に参加
