オーディオ
このドキュメントでは、Microsoft の音声認識プラットフォームで使用することを目的としたオーディオ再生デバイスやオーディオ入力デバイスなど、オーディオ デバイスの設計と開発に関する推奨事項について説明します。 Speech Platform は、音声入力やライブ キャプションなど、Windows の音声エクスペリエンスのすべてを強化するために使用されます。 このドキュメントの目的は、エコシステム パートナーが、Microsoft テクノロジを使用して最適化されたオーディオ エクスペリエンスを備えたデバイスを構築できるようにすることです。
ハードウェアの最小要件と Windows ハードウェア互換性プログラム
最小ハードウェア要件と Windows ハードウェア互換性プログラム要件は、Windows 互換オーディオ ソリューションを作成するための基本になります。 プログラムはオプションですが、基本的なオーディオ品質を確保するために、オーディオ製品が両方の要件を満たしていることを強くお勧めします。
それぞれの詳細については、以下を参照してください。
セクション 6.2.2 の「最小ハードウェア要件」を参照してください
「Windows ハードウェア互換性プログラム」を参照してください
マルチストリーム オーディオ再生を最適化するシナリオ
マルチストリーミングは Windows 10 Desktop エディションの要件ではなくなりましたが、マルチストリーミング シナリオをサポートするには、少なくとも 2 つのデジタル - アナログ コンバーター (DAC) を用意することを強くお勧めします。 単一の DAC (リダイレクトされたヘッドセットなど) を使用する場合は、ユーザー設定を保持できるように、オーディオ エンドポイント (統合スピーカーや 3.5 mm オーディオ ジャックなど) ごとに独立してオーディオ ボリューム コントロールとステータスをサポートすることを強くお勧めします。
音声および通信用のオーディオ ソリューションの最適化
オーディオ ソリューションがハードウェアの最小要件と Windows 互換性プログラムの要件の両方を満たすと、オーディオ ソリューションは Windows で基本的なオーディオ エクスペリエンスを提供します。 対象となる市場セグメントに応じて、デバイスでは、Speech Platform と Skype の 2 つの追加の最適化がサポートされる場合があります。 Speech Platform と Skype の両方に関する推奨事項は、基本的なオーディオ エクスペリエンスの要件を基にビルドされています。 オーディオ ソリューションが基本的な要件を完全に満たしていない場合は、Speech Platform または Skypeを最適化する必要があります。
Note
テレフォニーおよび Skype などのアプリケーションのガイドラインは、利用可能になったときにこのトピックに補足されます。
Windows の音声認識
デバイスの製造元は、音声認識のテスト基準と比較してパフォーマンスを最適化するために、音声強調処理をデバイスに統合および調整することをお勧めします。
統合された音声強調処理のないデバイスの場合、Microsoft は Windows 10 で既定の処理を行います。 Microsoft の音声強調処理では、IHV によるデバイス固有の調整は必要ありません。
音声ドライバーが音声のマイク ジオメトリと音声信号処理を公開しない場合は、Microsoft 音声強調パイプラインが使用されます。 サードパーティの機能強化を利用するには、マイクのジオメトリを提供し、オーディオ入力で "音声" 信号処理モードをサポートし、オーディオ ドライバーまたはそのソフトウェア APO によって提供される効果に少なくともノイズ抑制とエコー キャンセリングが含まれている必要があります。
音声認識とテレフォニーの違い
音声認識機能を対象とする多くのデバイスは、テレフォニーの使用も対象としています。 類似点は明らかです。どちらのシナリオでも、マイクを備えたデバイスを使用して人間の音声を選択し、音声処理パイプラインを使用して環境からノイズを取り除き、人間の音声を強化し、音声を理解するために明確な音声信号に依存するアプリケーションを使用します。
違いは、音声信号を誰または何が使用するかという点です。 テレフォニーには人間の利用者がいるため、知覚的な音声品質と音声明瞭度が最も重要になります。 音声認識にはアルゴリズムのコンシューマーがいます。この場合、音声信号の特定の機能でトレーニングされた機械学習によって、認識されるものが決まり、それらの機能が必ずしも知覚基準に一致するとは限りません。
多くの場合、音声認識品質は音声認識の精度と関連していますが、必ずしもそうではありません。 このドキュメントでは、音声認識の精度を評価して最大化する方法について説明します。 "音声" 信号処理モードをサポートすること、そして音声認識専用にこのモードを調整することをお勧めします。
Skype/Lync オーディオ認定に合格することは、デバイスのオーディオ パフォーマンスが良好であることを示す強力な指標です。
オーディオ デバイスに関する推奨事項
次のセクションでは、音声に関する推奨事項について説明します。 高品質の音声エクスペリエンスを実現するには、すべてのデバイスをこれらのパフォーマンス要件に対してテストする必要があります。
面グラフ | ガイダンスの種類 | テストするデバイス |
---|---|---|
Device.SpeechRecognition | 高品質の音声エクスペリエンスを実現するために、音声認識のパフォーマンス要件を提供します。 | すべてのデバイスは、これらのパフォーマンス要件に対してテストされている必要があります。 |
Device.Audio | ソフトウェア インターフェイス、通信プロトコル、およびデータ形式の観点から、ホスト OS で最適に機能するためのガイドラインを提供します。 | すべてのデバイスは、これらのガイドラインに対してテストされている必要があります。 |
Device.Audio.Acoustics | デバイス設計の音響および関連するプロパティに関する推奨事項とベスト プラクティスを提供します。 | Microsoft の音声強調処理を使用するデバイスに最も関連性があります。 |
Device.SpeechRecognition
次の表は、さまざまな環境にあるデバイスのターゲット音声認識精度に関する Microsoft の推奨事項をまとめたものです。 すべてのターゲットの音声の精度が対象になります。
テスト | 説明 | 移行先 | 推奨事項 |
---|---|---|---|
Device.SpeechRecognition.Quiet | 周囲ノイズ (ノイズ フロア < 35 dBA SPL) が最小限で、受信 (エコー パス) ノイズがない理想的な環境。 | Quiet <= 35 dBA SPL | 95% |
Device.SpeechRecognition.AmbientNoise | さまざまなレベルと種類のノイズの多い環境 (例: カフェ & パブ)。 | 環境ノイズ @ DUT >= 57 dBA SPL | 90% |
Device.SpeechRecognition.EchoNoise | さまざまなレベルと種類のレンダリング再生シナリオ (メディアの再生など)。 | エコー ノイズ @ LRP >= 70 dBA SPL | 90% |
Device.Audio
このセクションの推奨事項は、デバイスのソフトウェアとハードウェアのインターフェイス、通信プロトコル、およびデータ形式に関して作成されています。 音声認識機能を使用することを目的としたデバイスは、すべての Device.Audio 要件を満たす必要があります。
名前 | 推奨事項 |
---|---|
Device.Audio.Base.AudioProcessing | ドライバーは、FXStreamCLSID、FXModeCLSID、FXEndpointCLSID APO (またはプロキシ APO) を介してすべてのオーディオ効果を公開する必要があります。 APO は、クエリの実行時にシステムに有効になっている効果の正確な一覧を送信する必要があります。 ドライバーは、APO の変更通知をサポートし、APO の変更が発生したときにのみシステムに通知する必要があります。 |
Device.Audio.Base.StreamingFormats | 音声認識は、StreamingFormats HLK で定義されているすべてのオーディオ キャプチャおよびレンダリング ストリーミング形式で機能します。最適なのは、24 ビットキャプチャおよびモノラル レンダリングで 16 kHz です。 |
Device.Audio.Base.SamplePositionAccuracy | オーディオ信号のレンダリングとキャプチャの両方が、1) 正確にサンプリングされ、2) 正確にタイムスタンプが付けられていることが重要です。 |
Device.Audio.USB.USB | すべての USB オーディオ入力デバイスは、USB.org デバイス クラス仕様に従って記述子を適切に設定する必要があります。 |
ドライバーのガイドライン | WDM オーディオ ドライバーの開発のロードマップ |
Device.Audio.Acoustics
このセクションの推奨事項は、マイクやスピーカーの配置、マイクの応答、デバイスからの受信ノイズなど、デバイスの音響プロパティと関連するプロパティに関して作成されています。 マイクの選択、配置、統合、およびアレイの設計は、高品質の音声認識パフォーマンスをサポートするための最も重要な要素の一部です。
推奨事項とテストは、音声強調処理前の信号に関連していますが、マイクのイコライゼーションと固定マイク ゲインの後です。
推奨されるマイク配列ジオメトリを含む、これらすべての推奨事項の詳細については、「マイク配列ジオメトリ記述子の形式」を参照してください。
名前 | 推奨事項 |
---|---|
Device.Audio.Acoustics.MicArray | 「Windows でのマイク配列のサポート」を参照してください。 オーディオ ドライバーは、KSPROPERTY_AUDIO_MIC_ARRAY_GEOMETRY プロパティを実装する必要があります。 次に、Windows.Devices.Enumeration API を介して System.Devices.MicrophoneArray.Geometry プロパティにアクセスできます。 USB オーディオ ドライバーは、USB 記述子に適切なフィールドが設定されている USB マイク アレイに対してこのプロパティをサポートします。 |
マイク アレイ記述子 | デバイスでは、マイク アレイ記述子を使用して、マイクの種類とジオメトリを記述する必要があります。 |
Device.Audio.Acoustics.MicSensitivity | 最大推奨値は、"大" と見なされる音声入力レベルをサポートできるように設定され、最小推奨値は、"サイレント" と見なされる音声入力レベルをサポートできるように設定されています。 |
Device.Audio.Acoustics.MicIntegration | マイクとデバイス シャーシの間、および必要に応じてマイク ポーティング チューブに沿って良好な音響シールを実現するために、マイクを統合する必要があります。 システムとマイクの間の音響ノイズと振動を最小限に抑えます。 2 つの一般的な解決策は、ゴム ブートまたはゴムを使用するという方法です。 どちらの方法を選択した場合でも、音響シールがすべての製造許容範囲において、また環境と寿命の両方の経年変化において十分であることを確認してください。 |
Device.Audio.Acoustics.MicPlacement | マイクは、スピーカー、ファン、キーボード、ハード ドライブ、ユーザーの手などのノイズ源からできるだけ離し、スピーカーの口にできるだけ近づけて配置します。 |
Device.Audio.Acoustics.MicSelfNoise | 高品質のマイクを使用すると、マイクの内部ノイズが最小限に抑えられます。 標準には、SNR が公称 61dB 以上のマイク、プレミアムには 63 dB のマイクをお勧めします。 |
Device.Audio.Acoustics.MicReceivedNoise | 受信ノイズの 2 つの主な原因は、音響ノイズと電気ノイズです。 音響ノイズは、デバイスの外部から発生したり、ファンやハードディスクなどによってデバイスの内部で発生したりする可能性があります。音響ノイズは、デバイスのメカニズムを介して伝達される場合もあります。 アナログ マイクではなくデジタル マイクを使用することで、電気ノイズを最小限に抑えることができます。 |
Device.Audio.Acoustics.MicMagnitudeResponse | プレミアム マスクと標準マスクは、Device.Audio.Acoustics.Bandwidth の下のすべてのデバイス層に適用されます。デバイスは、標準帯域幅 (ナローバンド) とその帯域内のプレミアム マグニチュード応答を持つことができます。 |
Device.Audio.Acoustics.MicPhaseResponseMatching | この推奨事項により、配列内のマイク要素を介して受信された信号間の一時的な関係が、配列内のマイク要素の物理的なジオメトリと一致します。 |
Device.Audio.Acoustics.MicDistortion | 歪みは SDNR (パルス ノイズの信号対歪みとノイズの比率) を使用して測定することをお勧めします。これには、THD ターゲットも指定されています。 |
Device.Audio.Acoustics.MicBandwidth | キャプチャ信号のサンプル レートは、音声信号の有効帯域幅を決定する主な要因です。 音声プラットフォームでは音声認識エンジンで 16 kHz の音響モデルが使用されます。そのため、16 kHz の最小サンプル レートをお勧めします。 音声認識エンジンの有効な下限は 300 Hz ですが、200 Hz は音声通信を対象とするデバイスにも推奨される音響制限です。 |
Device.Audio.Acoustics.RenderDistortion | 歪みは SDNR (パルス ノイズの信号対歪みとノイズの比率) を使用して測定することをお勧めします。これには、THD ターゲットも指定されています。 |
Device.Audio.Acoustics.RenderPlacement | 音響エコー キャンセル機能を有効にするには、デバイスのスピーカーをマイクから最大距離に配置するか、指向性の null 値をスピーカーに向けて配置する必要があります。 |
サードパーティの拡張機能パイプラインを有効にする要件
サードパーティの拡張機能パイプラインを有効にするには、次の要件が重要です。 これらの推奨事項と他の推奨事項については、次のセクションで詳しく説明します。
マイク位置レポートは、マイク アレイのレポート構造を実装する方法について説明しています。
音声モードでは、次の機能がサポートされます。
特定のモードに APO を登録する方法
オーディオ信号の処理モード
Device.Audio.Base.Audioprocessing – サードパーティのパイプラインには音響エコーキャンセル (AEC) とノイズ抑制 (NS) が必要です。
オーディオ処理オブジェクトの実装
オーディオ処理オブジェクトのアーキテクチャ