本文にスキップする

良い音質を伝えるためのVQE

カン・インギュ

コロナ禍の長期化により、リモートワークやオンライン授業などの非対面活動が大幅に増加しました。これをきっかけに、人々は非対面活動のメリットを学び、自然にそれを好むようになり、新型コロナウイルス感染症の流行後も着実に非対面活動が増えています。

非対面活動には、相互に情報を伝えるビデオ会議システムが必須です。この記事では、ビデオ会議において音声情報がどのような過程を経て相手に伝わるのか、高品質の音声を伝えるための方法について説明します。

この記事では、周囲環境改善のためにユーザーが取るべき行動と、LINE PlanetのVQE(Voice Quality Enhancement)フィルター機能について説明します。さらに、特定の状況で音質を高めるためにVQEを制御する方法も確認できます。

音質の重要性

音声情報は人間が意思疎通のために使う最も基本的な手段であり、非対面活動においても必須といえます。ビデオ会議では、自分の声が会議に参加した全員に伝わるため、自分の音質が悪いと相手が疲労を感じる可能性があります。例えば、バックグラウンドノイズのために他の人が自分の話を聞き取れなかったり、エコー(echo)のために他の人の声が何度も聞こえたりして、会議に集中できないことがあります。したがって、会議を円滑に進めるためには、高品質の音声情報を伝送することが重要です。

音声品質を高めるには、2つの方法があります。1つ目はユーザーが周囲の環境を改善する人工的な方法であり、2つ目はVQEのような音声フィルターを使用する技術的な方法です。ここでは、これら2つの方法について説明します。

音声品質を高めるユーザー環境構築

音声品質を高めるための適切なユーザー環境がどのようなものなのか、音声の伝送プロセスと音声品質を決定する要素をまず確認してみましょう。

音声伝送プロセスと品質決定要素

音声がどのように伝わるかが分かれば、音質を決定する要素を見つけることができます。ビデオ会議システムで、自分の音声が相手に伝わる過程は以下のとおりです。

ビデオ会議システムでの音声伝送過程
ビデオ会議システムでの音声伝送過程

発話者(User1)から発生した音声は空気振動の形でマイクに伝われ、マイクはそれをデジタル信号に変換します。このデジタル信号は送信機(sender)で圧縮され、パケットとしてサーバーを介して他の参加者に伝送されます。参加者(User2、User3)に伝送されたパケットは受信機(receiver)でデコードされ、スピーカーに出力されます。これにより、参加者(User2、User3)が発話者(User1)の音声情報を聞くことができます。

マイクは空気の振動をデジタルに変換するデバイスなので、自分の声だけでなく、マイク周囲で発生したすべての音をまとめて収集します。収集された音のうち、自分の声以外の音はほとんどが不要なものですが、その音が音声と一緒に送信されると、音声情報を妨害し、会議に集中できなくなります。さらに、ネットワークの状態によっては音声が劣化することがあります。

このように、オーディオデバイスの性能と周囲環境、ネットワークの状態が音声品質に影響を与えることがわかります。この記事では、このうち、オーディオデバイスと周囲環境要因についてのみ説明します。各要因について、音声情報の伝送を妨げる代表的な要素であるノイズとエコー、適切ではない音量、ハウリングをどのように改善できるかを見てみましょう。

オーディオデバイスの環境要因と解決策

音声情報の伝送を妨げるオーディオデバイス環境の要因と、それを抑える方法をご紹介します。

ノイズ(noise)

オーディオデバイス自体もノイズを発生させます。オーディオデバイスで発生するノイズは、形態や原因は様々ですが、マイク端子の接触不良、接地の問題、低品質のマイクの電気的ノイズなどが主な原因です。

このようなノイズは、主に信号対雑音比(signal-to-noise ratio、SNR)が低い低品質のマイクで発生します。すなわち、このようなノイズを減らすためには、低品質のマイクの使用を避けることをお勧めします。

音量(loudness)

ビデオ会議では自分の声が最も重要な情報なので、相手に明確に伝わる必要があります。自分の声が小さすぎたり、大きすぎたりすると、会議参加者の疲労度を高める可能性があります。

声の大きさの差が生じる原因は様々ですが、結果的にマイクから収集したオーディオレベルが異なるためです。これはマイクの収音(音響収集性能。マイク感度やマイク自体の性能によっても異なるため、入力レベルと全く同じではない)特性によって異なる場合があります。特に指向性のマイクは、マイクの方向によっても収音レベルが異なります。発話者とマイクの距離、発声の大きさによって音量差が生じることがありますが、一般的にマイクを口から5cm〜100cmの範囲に置くことをお勧めします。

エコー(echo)

相手の音が自分のスピーカーから出力されると、その音も自分のマイクに集まります。音が何らかの媒体に反響して戻ってくることをエコーと言いますが、集めた音を伝えるマイクは最も大きな反響源といえます。

相手の音が自分のマイクから収集されたまま相手に伝わると、相手は時間差を置いて自分の音を再び聞くことになります。ビデオ会議で参加者のうち一人でもエコーが発生すると、参加者全員が不便を感じることになります。

エコーの発生源はスピーカーであり、マイクとスピーカーの距離が近いほど、スピーカーの出力が大きいほど、そしてマイクの感度が高いほどエコーは大きくなります。したがって、できる限りスピーカーとマイクの距離を遠ざけ、スピーカーの出力レベルとマイクの入力レベルを上げ過ぎないことがエコーを小さくするのに役立ちます。

スピーカーやマイクが統合されたオーディオデバイスを使用することも、音声品質を高めるのに役立ちます。特にイヤホンやヘッドセットは、スピーカーの出力音が直接耳に伝わり、外部と遮断されるため、エコーの大きさが非常に小さいです。さらに、音声を口から近い距離で収集するため、SNRが高く、ノイズの原因を最小限に抑えることができます。

エコー発生過程
エコー発生過程

周囲環境要因と解決策

周囲環境によって音声情報伝送を妨げるオーディオデバイス環境の要因と、それを抑える方法をご紹介します。

ノイズ(noise)

マイクは空気の振動を音として認識するので、周囲のノイズもすべて収集します。例えば、パソコンのファンの音、キーボードを叩く音、扇風機の風切り音などが空気の振動を引き起こすノイズになります。そのため、マイクをノイズの原因からできるだけ遠ざけることをお勧めします。

非常に小さな振動でも、マイクとの距離が近いと大きなノイズになります。ノイズが非常に激しい場所(カフェ、工事現場、道路沿いなど)で通話する状況であれば、マイクのミュート状態を維持して、発話するときだけミュートを解除することで、ノイズによる不快感を軽減できます。

ノイズ流入過程
ノイズ流入過程

ハウリング(howling)

ハウリングとは、スピーカーから出力した音がマイク入力にフィードバックされ、無限に増幅されてノイズが発生する現象を指します。特に同じ部屋で2台以上のデバイスが会議に参加する場合、ハウリング現象が発生する可能性があります。そのときは、すべてのデバイスのマイクをミュートにするか、1台のデバイスだけを残して他のデバイスのマイクとスピーカーをすべてミュートにすることでハウリング現象を防ぐことができます。

環境改善方法のまとめ

音声をより良い品質で伝えるために、次のような環境改善方法を使用できます。

影響要因原因解決策
オーディオデバイスの環境要因ノイズ低品質マイクの使用を避ける
音量マイクとの距離は5-100cmを維持
エコーイヤホンやヘッドセットを使用
周囲環境要因ノイズマイクからノイズ源を遠ざける。ミュートの活用
ハウリング1つの空間で1台の装置のみ使用

音声品質を妨げる要因を改善した事例

上記のような要因を除去して音声品質を改善した実際の事例があります。

広い会場(屋内講堂)で行われるビデオ会議に参加したユーザーから「会場内の発表者の音声品質が悪い」と言われたことがあります。その会場の環境は、以下の図のとおりでした。

発表者はルームマイクを手で持って発表し、発表者の声はルームマイクに接続されたルームスピーカーから会場内の聴衆に伝わっていました。発表者とルームスピーカーの間にノートパソコンを置き、このノートパソコンのカメラとマイクロビデオ会議に接続し、リアルタイムで発表を中継しました。

改善前の発表環境
改善前の発表環境

発表者からノートパソコン内蔵マイクまでのオーディオパス(audio path)は、発表者→ルームマイク→ルームスピーカー→ノートパソコン内蔵マイクの順です。オーディオパスが長くなればなるほど、遅延が増え、音質が劣化する可能性が高くなります。このようにオーディオパスを設定すると、大きく2つの問題があります。

  • 第一に、ルームスピーカーとノートパソコン内蔵マイクの距離が遠いため、ノートパソコン内蔵マイクが受信する発表者の声が小さくなり、会場周辺のノイズが混入してSNRが低下します。さらに、このオーディオパスにはアナログ区間と空中伝搬(acoustic)区間が含まれるため、音質はルームスピーカーとノートブック内蔵マイクの性能に依存することになります。
  • 第二に、発表者の声がノートパソコン内蔵マイクで収集され、会場内に響き渡り、ビデオ会議の参加者に何度も伝わります。

このため、ビデオ会議で聞く発表者の声の品質が低下しました。良い音声品質のためには、高いSNRを確保することが重要です。すなわち、外部ノイズがあっても、発表者の声が周囲の音より著しく大きい環境を構成すれば、良い音声品質を保証できます。

以下の図をご覧ください。

改善後の発表環境
改善後の発表環境

ルームマイクにミキサーを接続し、ノートパソコンのライン入力に入れます。オーディオパスは、発表者→ルームマイク→内蔵ライン入力です。このようにオーディオパスを短縮することで、空中伝搬区間を排除し、ルームスピーカーの性能依存性も排除しました。アナログ区間もルームマイク1本のみとなります。つまり、ノートパソコンで受信するオーディオは、純粋にルームマイクの性能のみに依存することになります。さらに、ルームマイクと発表者との間の距離、ノイズ源と発表者間の距離差が大きいため、高いSNRを確保でき、音質劣化を大幅に低減できます。

音声品質を担うVQE

上記の例のように、ユーザーは音声品質を高めるために、ノイズや音量、エコーを直接調整できます。

しかし、ユーザーが常に完璧な環境を構築することを期待するのは難しいです。このため、LINE Planetはマイクから収集した音を後処理して品質を高める高性能VQEオーディオフィルターを提供しています。VQEは、邪魔になる音を抑制し、主要音の音量を調整しながら音声情報を改善します。

VQEとは?

VQEはVoice Quality Enhancementの略語で、音声品質を高めるオーディオフィルターのコレクションを指します。代表的なVQEとしては、ノイズ除去フィルター(noise suppressor)、エコー除去フィルター(acoustic echo canceller)、音量調整フィルター(automatic gain control)などを提供しています。各フィルターは、上記の音質妨害要因である周辺ノイズや音量、エコーを改善します。ビデオ会議ソフトウェアで音声品質を高めるためには、VQEモジュールが必須です。

VQEは内臓(built-in)タイプとLINE Planetタイプに分けられます。内臓タイプはオーディオデバイスまたはOS自体に含まれるVQEを指し、LINE PlanetタイプはLINE Planetプラットフォームが提供するVQEを指します。内臓タイプは、そのオーディオデバイス(マイクとスピーカー)の特性に合わせてフィルターをチューニングしているため、一般的にそのデバイスではLINE Planetタイプよりも優れた品質を提供します。一方、LINE Planetタイプは、様々なオーディオデバイスで汎用的に動作するようにチューニングされています。

LINE PlanetのVQEが提供するフィルターは様々ですが、ここでは通話に必須であるフィルターについてのみ説明します。

ノイズ除去フィルター(noise suppressor、NS)

NSは文字通りノイズを除去するフィルターです。ノイズ除去フィルターは、音声を除くすべての信号をノイズと判断して除去します。

以下の図は、LINE Planetが提供するNSがノイズを除去する過程を示しています。

ノイズ除去過程
ノイズ除去過程

マイクから収集した信号xは、発話者の声sと周囲のノイズnを合わせた形です。NSはnを推定したn'を作り、xからn'を引いて発話者の声(s')だけを残します。このとき、フィルターの性能はn'がnに近いかどうかで評価できます。つまり、n'がnに近いほどs'もsに近くなります。

LINE Planetは、2つのバージョンのNSを提供しています。一つは低スペックデバイスのためのレガシーフィルター(legacy NS)、もう一つは機械学習(Machine learning、ML)を活用した高性能フィルター(MLNS)です。低スペックデバイス用NSは、ファンノイズのような一定の(stationary)ノイズを主に除去する一方、高性能MLNSは一定のノイズだけでなく、キーボードの音のような一定でない(unstationary)ノイズも除去でき、性能がより優れています。

エコー除去フィルター(Acoustic Echo Canceller、AEC)

AECは、マイクから収集した音からエコーのみを除去するフィルターです。AECは、スピーカーに出力する音をリファレンス(reference)として入力し、マイクから収集した信号からエコー成分を検索して除去します。

以下の図は、LINE Planetが提供するAECがエコーを除去する過程を示しています。

エコー除去過程
エコー除去過程

マイクから収集した信号xは、発話者の声sとエコーeを合わせた形です。

AECはスピーカーから出力する信号rをリファレンス(reference)としてxからeを推定したe'を作り、xからe'を引いて発話者の声(s')だけを残します。AECの性能もノイズ除去フィルターと同様に、e'がeに近いかどうかで評価できます。つまり、e'がeに近いほどs'もsに近くなります。

音量調整フィルター(Automatic Gain Control、AGC)

マイクが収集した音声の大きさは、マイクの感度、ユーザーの発声状態によって異なります。AGCは、変化の多い音声の大きさを一定レベルに保つためのフィルターです。つまり、信号が大きすぎると出力を制限し、小さすぎると出力を大きくします。

LINE Planetは、H/Wタイプ(H/W AGC)とS/Wタイプ(S/W AGC)の2種類のAGCを提供しています。

  • S/W AGCは、入力音声が一定の音量で維持されるようにゲイン(gain)を乗じて補正を行う役割を果たします。しかし、補正をしすぎると音質に悪い影響を与える可能性があるため、限界があります。つまり、マイクロから適度な音量が入る方がより良い音質を保証でき、そのために使用されるのがH/W AGCです。
  • H/W AGCでは、マイクが収集した信号xの音声区間エネルギーを計算した後、これが基準レベル区間より大きい場合はマイク感度を下げ、基準レベル区間より小さい場合はマイク感度を上げ、基準レベル区間に含まれる場合はマイク感度を維持して音声が一定のレベルに入るようにします。H/W AGCはマイクデバイスを直接制御するため、マイクを制御できるプラットフォーム(Windows、macOS)でのみ提供されます。

以下の図は、LINE Planetが提供するH/W AGCが動作する過程を示しています。H/W AGCを使用してマイク感度を調整した後、S/W AGCでもう一度音量を補正する過程を経ます。

H/W AGCの動作過程
H/W AGCの動作過程

VQEフィルター制御

一般的にはVQEフィルターを使用することが音質を高めるのに役立ちますが、使用するデバイスや状況によってはそうでない場合もあります。これに備えて、LINE PlanetはVQEフィルターをオンまたはオフにする機能を提供しています。

では、いつ各フィルターをオフにするのがよいのでしょうか?VQE制御APIを利用してオーディオフィルターを制御すると音質に役立つ状況について説明します。

VQEフィルターをオフにした方がよいケース

内臓AECが動作するオーディオデバイスを使用する場合

主に1つのオーディオデバイスにマイクとスピーカーが一緒に搭載された高性能デバイスでは、内蔵AECを提供することもあります。内臓AECは、オーディオデバイスの特性に合わせてチューニングされているため、通常LINE PlanetのAECよりも性能が優れています。

AECを使用すると、マイクが収集した信号xからエコーeを除去する過程で、Near-end speech(s)に歪みが発生する可能性があります。内臓AECが動作するデバイスでは、内臓AECを通すことですでにエコーが除去されているため、LINE Planet AECを再度通すことで歪みを悪化させる可能性があります。したがって、内臓AECが動作するオーディオデバイスでは、LINE Planet AECをオフにして、収集した信号をそのままバイパス(bypass)した方がオーディオ品質に役立つ場合があります。内臓AECでエコーを十分に除去できないときは、LINE Planet AECをオンにして残りのエコーを除去する方が役立つ場合があります。

ちなみに、iOSでは内臓AECが基本的に動作するので、LINE Planet AECはオフにしています。

以下の図は、内臓AECが搭載されたオーディオデバイスでLINE PlanetのAECをオフにした場合のオーディオの処理過程を示しています。

LINE Planet AECをオフにした場合のオーディオ処理過程
LINE Planet AECをオフにした場合のオーディオ処理過程
楽器を演奏したり、音楽を送信したりする場合

NSは、声を除く信号をノイズと判断し、収集した信号から除去します。音楽もノイズと判断するので、NSの除去対象となります。ビデオ会議システムで楽器演奏や音楽を伝送したい場合は、LINE PlanetのNSをオフにすることをお勧めします。しかし、LINE Planet NSをオフにすると、音楽だけでなく周囲の雑音もそのまま伝わるので、ユーザーが雑音の原因をできるだけ抑えることがより重要になります。

ただし、内臓NSを搭載したオーディオデバイスでは、すでに音楽信号をノイズと判断して除去した状態でLINE Planetに流入する可能性があるため、LINE PlanetのNSをオフにしても効果が大きくない場合があります。例えば、iOSやAndroidでは、内臓NSがデフォルトで動作するため、マイクで音楽信号を伝えると良い品質を保証することが困難です。

AGCは音量を調整します。音楽信号も音量調整の対象なので、音の強弱が重要な音楽信号を伝えるには、LINE PlanetのAGCをオフにすることをお勧めします。しかし、LINE PlanetのAGCをオフにすると音の大きさを補正しないので、マイクの感度、マイクと音源との距離をユーザーが直接調整して、適切な音量がマイクに届くようにすることがより重要です。

以下の図は、LINE PlanetのNSとAGCをオフにした場合のオーディオの処理過程を示しています。

LINE Planet NS、AGCをオフにした場合のオーディオ処理過程
LINE Planet NS、AGCをオフにした場合のオーディオ処理過程

VQE制御API

LINE Planetは、前述のように、ビデオ会議ソフトウェア開発者がLINE PlanetのNS、AEC、AGCを制御できるようにAPIを提供しています。

このAPIを使用すると、VQE全体をオンまたはオフにして、それぞれのフィルターを調整することもできます。

VQE制御でLINE PlanetのVQE制御APIをご参照してください。

Note

VQE制御APIはPlanetKit 4.3以上でサポートされています。

プラットフォーム別のVQEオーディオフィルターのデフォルト値

オーディオデバイスや端末の機種によって多少異なる設定がある場合がありますが、LINE Planetで使用する基本設定は以下の表のとおりです。

プラットフォームAECNSAGCタイプ
AndroidRECOMMENDEDENABLEDSOFTWARE(HARDWAREモード未対応)
iOSDISABLEDENABLEDSOFTWARE(HARDWAREモード未対応)
macOSRECOMMENDEDENABLEDHARDWARE
WindowsRECOMMENDEDENABLED- PlanetKit 4.3および4.4:SOFTWARE
- PlanetKit 5.0以上:HARDWARE

今後のVQEフィルターの改善方向

LINE Planetは、機械学習技術をNSに適用することで、ビデオ会議のノイズ除去性能を大幅に向上しました。従来は主にファンノイズのように一定の特性を持っているノイズを除去していましたが、機械学習ベースのNSは音声を除くすべてのノイズを除去できるようになりました。レガシーNSより演算量が増え、現在はWindowsとmacOSでのみ使用できますが、最適化作業で演算量を大幅に削減しているため、モバイルプラットフォームにもすぐに適用する予定です。

さらに、エコー除去性能だけでなく、同時に話す(double talk)状況での音質改善を目指し、機械学習を活用したAECの開発も行っています。機械学習ベースのAECもデスクトッププラットフォームに先に適用した後、最適化作業を経てモバイルプラットフォームに適用する計画です。

人は一定のトーンを聞き続けると疲労度が蓄積され、ビデオ会議で集中力が低下することがあります。LINE Planetは、受信した音声に空間感を与え、疲労度を軽減する方法も検討しています。

おわりに

オーディオデバイスは非常に多様で、ビデオ会議システムを使用する形態や目的も異なるため、すべての状況で常に良い品質を提供することは非常に困難です。LINE Planetチームは、継続的な研究開発を通じて、より適切なパフォーマンスを提供し、機能を改善するために様々な課題に取り組んでいます。このような技術をもとに、これからも、より多くのユーザーが最適なオーディオ品質を楽しめるようになることを期待して、この記事を終わりにします。

ありがとうございました。