音声 : 音声品質

ヒス ノイズとスタティック ノイズのトラブルシューティング

2002 年 10 月 1 日 - ライター翻訳版
その他のバージョン: PDFpdf | 機械翻訳版 (2013 年 8 月 21 日) | 英語版 (2006 年 7 月 18 日) | フィードバック

目次


概要

この文書は、ボイス(音声)会話時に見られるヒス ノイズ(シューという音)またはスタティック ノイズについて説明し、問題の解決方法を掲載しています。

前提条件

この文書を読み進めるには、次のことについて理解している必要があります。

  • Voice over IP(VoIP)の基本的な知識
  • VAD の概念とその用途

ハードウェアとソフトウェアのバージョン

この文書の情報は、次のソフトウェアとハードウェアのバージョンに基づいています。
  • IP Plus 機能セットが動作している Cisco IOS ソフトウェア リリース 12.1 以降
  • すべての Cisco ボイスゲートウェイ

コンフォート ノイズと VAD

ほとんどの IP ベースのテレフォニー システムには、ボイスアクティビティ検出機能があります。この機能の目的は、ボイス信号の無音期間を検出し、無音期間中、信号の伝送を一時的に中断することです。これによって帯域幅が節約され、遠端でジッタ バッファを調整できます。欠点は、無音期間中、遠端の電話機が独自に信号を生成し、通話者に対して再生しなければならない点です。通常は、遠端からボイス信号が届いていないことを隠すために、通話者に対してコンフォート ノイズが再生されます。実際のバックグラウンド ノイズからコンフォート ノイズに切り替わるときに明確な差異が感じられないようにするため、コンフォート ノイズは通常、遠端のノイズに基づいてモデル化されています。

図 1 は典型的な IP テレフォニー システムを示しています。図中の IP ボイスデバイスには、IP 電話、IP アナログ ゲートウェイ、IP デジタル ゲートウェイなどが当てはまります。


図 1:IP テレフォニー システム

デバイス A とデバイス B 間のコール中に、デバイス A が無音期間に入ります(図 2)。ボイスアクティビティ検出機能は一定のアルゴリズムを使用して無音期間に入ったかどうかを判定します。通常は過度の切り替えやボイスにむらが生じることを防ぐため、各ボイスのバーストの最後に時間 t1 のホールドオーバー期間が設けられていて、その間は継続して遠端にパケットが送信されます。このホールドオーバー期間中に別のボイスが検出されると、デバイス間のボイスストリームは中断されずにそのまま継続されます。時間 t1 が経過しても(下の図 2 の T2)次のボイスが検出されない場合、IP ボイスデバイス A はパケットの送信を停止します。


図 2:デバイス A の VAD イベント

時間 T1(図 2)で、VAD ホールドオーバーが始まったことを伝える通知がデバイス B に送信されます。この通知には、VAD ホールドオーバーの期間も含まれます。デバイス B はこのメッセージを受信すると、デバイス A から受信されるボイス信号を徐々に減衰し、逆にコンフォート ノイズを増幅しながら、そのボイス信号と混合します(図 3 を参照)。


図 3:ホールドオーバー期間中のバックグラウンド ノイズとコンフォート ノイズの減衰

この減衰には、実際のバックグラウンド ノイズから、生成されたコンフォート ノイズにスムーズに移行できるという効果があります。バックグラウンド ノイズの特性と生成されたコンフォート ノイズの特性が大きく異なる環境での移行をよりスムーズに行うことが可能で、移行が気付かれる可能性も小さくなります。この手法の効果の度合いは VAD ホールドオーバー期間の長さ(t1)によって決まります。VAD ホールドオーバー期間が長ければ長いほど、ボイスがスムーズに移行します。

時間 T2(図 2)の前にボイス信号が割り込んできた場合は、減衰がただちに中止され、着信ボイスがそのまま再生されます。このような割り込みは、別の通知によってデバイス A からデバイス B に伝えられます。ボイス信号はバックグラウンド ノイズよりもかなり大きいため、逆方向への移行はかき消され、通話者が気付くことはありません。

前述のシグナリングはインバンド(たとえば、RTP の新しいペイロード タイプや Named Signaling Event など)でもアウトバンド(H.245 シグナリング イベントなど)でも可能です。

ヒス ノイズとスタティック ノイズの原因

ボイスコール中にヒス ノイズやスタティック ノイズが混入する原因は 1 つしかありません。それは会話へのコンフォート ノイズの導入です。コンフォート ノイズがボイスコールに導入される可能性は 2 つです。1 つは VAD の使用で、これが最大の要因です。VAD が作動すると必ず、コンフォート ノイズ パケットがボイスストリームに導入されます。もう 1 つの可能性はエコー キャンセルの作動です(これは主要な要因ではありません)。エコー キャンセルがアクティブになると必ず、コンフォート ノイズ パケットがボイスストリームに導入されます。これらのコンフォート パケットの特性は、進行中の会話を監視し、バックグラウンド ノイズの形跡を受信するアルゴリズムによって決まります。このコンフォート ノイズがヒス ノイズです。

上記のシナリオでは、デバイス A が一時停止した場合に、デバイス B がかなりのヒス ノイズを受けることがあります。これには、VAD パラメータを適切に調整することで対応できます。VAD パラメータを微調整しても問題が解決しない場合は、VAD を無効にすることをお勧めします。

VAD パラメータの調整

VAD の機能を設定するために、次の 2 つのパラメータがあります。

music-threshold

VAD がいつアクティブになるかを制御する初期しきい値が決定されます。これを制御するには、ボイスポートで music-threshold <threshold_value> コマンドを定義します。有効な範囲は -70〜-30 dBm で、デフォルト値は -38 dBm です。低い値(-70 dBm 付近)に設定すると、かなり低い信号強度で VAD がアクティブになります。音量が相当低くならない限り、無音とは見なされません。高い値(-30 dBm 付近)に設定すると、ボイス信号の強度が少し下がっただけで VAD がアクティブになり、コンフォート ノイズ パケットが再生される頻度が高くなります。ただし、これはボイスの軽度のクリッピングを引き起こす場合があります。

3640-6#configure threshold Enter configuration commands, one per line. End with CNTL/Z. 3640-6(config)#voice-port 3/0/0 3640-6(config-voiceport)#music-threshold ? !--- メッセージ:-70〜-30 の数値を入力してください。 3640-6(config-voiceport)#music-threshold -50 3640-6(config-voiceport)#end 3640-6# 3640-6#show run | be voice-port voice-port 3/0/0 music-threshold -50

voice vad-time

VAD がアクティブになった後の構成要素(バックグラウンド ノイズとコンフォート ノイズ)を制御するには、グローバル設定のもとで voice vad-time <timer_value> コマンドを設定します。これは、無音を検出してから、ボイスパケットの送信を抑制するまでの遅延時間(ミリ秒)です。このホールドオーバー時間のデフォルト値は 250 ミリ秒です。これは、250 ミリ秒以内に、コンフォート ノイズが完全に導入されることを意味します。このタイマーの有効範囲は 250〜65,536 ミリ秒です。大きい値を設定すると、コンフォート ノイズが効果を発揮するまでにそれだけ長い時間がかかります(その間はバックグラウンド ノイズの再生が続きます)。65,536 ミリ秒に設定すると、コンフォート ノイズはオフになります。バッググラウンド ノイズからコンフォート ノイズへの移行をスムーズに行うには、このタイマーに大きい値を設定する必要があります。vad-time に大きい値を設定した場合の欠点は、期待される 30〜35 % の帯域幅節約が完全には達成されない点です。

3640-6#configure threshold Enter configuration commands, one per line. End with CNTL/Z. 3640-6(config)#voice vad-time ? <250-65536>milliseconds 3640-6(config)#voice vad-time 750 3640-6(config)#end 3640-6# 3640-6# 3640-6# 3640-6#show run | be vad-time voice vad-time 750

VAD の停止

上記のパラメータを調整してもヒス ノイズまたはスタティック ノイズがおさまらない場合は、VAD を無効にすることをお勧めします。これは、ゲートウェイだけでなく、Cisco CallManager でも行う必要があります。以下の項に、Cisco ゲートウェイと Cisco CallManager で VAD を無効にする方法を示します。

Cisco ゲートウェイでの VAD の無効化

H.323 を実行している Cisco ゲートウェイでは、VoIP ダイヤルピアの下に no vad コマンドを設定することで、VAD を無効にできます。終端ゲートウェイの場合は必ず、一致する適切な着信 VoIP ダイヤルピアに no vad を設定するように注意してください。適切な着信ダイヤルピアと一致させるために incoming called-number <number_dialed> を設定するとよい場合があります。発信元ゲートウェイでは、どの選択的な終端ゲートウェイでゲートウェイで VAD をオフにするかに基づいて、VoIP ダイヤルピアに no vad を設定できます。

dial-peer voice 100 voip incoming called-number !--- すべての発信先番号に一致させるため destination-pattern 1T no vad session target ipv4:10.10.10.10 dtmf-relay h245-alpha ip precedence 5

Cisco CallManager での VAD の無効化

Cisco CallManager で VAD を無効にするには、CallManager の次のパラメータが False(F)に設定されていることを確認します。

SilenceSuppresionSystemWide
SilenceSuppresionWithGateways

上記のパラメータを見つけるには、次の手順に従います。

  1. Cisco CallManager の Administration メニューから、Service > Service Parameters の順に選択します。
  2. Cisco CallManager の IP アドレスまたは名前をクリックし、Cisco CallManager を選択します。

Configured Service Parameters ボックスの下にパラメータがあります。


ツール情報

その他のリソースについては、シスコの「ボイス、テレフォニー、およびメッセージング テクノロジー用の TAC ツール」を参照してください。


関連するシスコ サポート コミュニティ ディスカッション

シスコ サポート コミュニティは、どなたでも投稿や回答ができる情報交換スペースです。


関連情報


Document ID: 22388