IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ブームクラウド 360 インコーポレイテッドの特許一覧

特許7562883全域通過フィルタネットワークを使用する仰角知覚的示唆のカラーレス生成
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-27
(45)【発行日】2024-10-07
(54)【発明の名称】全域通過フィルタネットワークを使用する仰角知覚的示唆のカラーレス生成
(51)【国際特許分類】
   H04S 7/00 20060101AFI20240930BHJP
   G10L 19/008 20130101ALI20240930BHJP
   G10L 25/18 20130101ALI20240930BHJP
【FI】
H04S7/00 300
G10L19/008 100
G10L25/18
【請求項の数】 20
(21)【出願番号】P 2023575530
(86)(22)【出願日】2022-07-07
(65)【公表番号】
(43)【公表日】2024-07-09
(86)【国際出願番号】 US2022036412
(87)【国際公開番号】W WO2023283374
(87)【国際公開日】2023-01-12
【審査請求日】2023-12-07
(31)【優先権主張番号】63/219,698
(32)【優先日】2021-07-08
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】63/284,993
(32)【優先日】2021-12-01
(33)【優先権主張国・地域又は機関】US
【早期審査対象出願】
(73)【特許権者】
【識別番号】518253875
【氏名又は名称】ブームクラウド 360 インコーポレイテッド
(74)【代理人】
【識別番号】110001243
【氏名又は名称】弁理士法人谷・阿部特許事務所
(72)【発明者】
【氏名】ジョセフ アンソニー マリグリオ ザ サード
(72)【発明者】
【氏名】ザッカリー セルデス
【審査官】土井 悠生
(56)【参考文献】
【文献】米国特許出願公開第2021/0112339(US,A1)
【文献】国際公開第2008/016097(WO,A1)
【文献】特表2024-507219(JP,A)
【文献】米国特許出願公開第2019/0108846(US,A1)
【文献】特開2006-005414(JP,A)
【文献】米国特許出願公開第2020/0021923(US,A1)
【文献】米国特許第5500900(US,A)
【文献】米国特許出願公開第2009/0222261(US,A1)
【文献】米国特許出願公開第2009/0299734(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04S 7/00
G10L 13/00-13/10
G10L 19/00-99/00
(57)【特許請求の範囲】
【請求項1】
サジタル平面に沿った空間的示唆をモノラル信号に符号化して、結果として得られる複数のチャネルを生成するための方法であって、処理回路による、
周波数依存位相シフトに関連付けられる空間的示唆に基づいて、前記結果として得られる複数のチャネルにおけるミッド成分もしくはサイド成分に対する目標振幅応答を決定するステップと、
前記ミッド成分もしくは前記サイド成分の何れかに対する前記目標振幅応答を、単一入力複数出力の全域通過フィルタのための伝達関数に変換するステップと、
前記全域通過フィルタを使用して前記モノラル信号を処理するステップであって、前記全域通過フィルタは、前記伝達関数に基づいて構成される、ステップと
を備えることを特徴とする、方法。
【請求項2】
前記結果として得られるチャネルの前記ミッド成分もしくは前記サイド成分に対する前記目標振幅応答が、補償されたヌルの観点から決定されることを特徴とする、請求項1に記載の方法。
【請求項3】
垂直空間的示唆を符号化する目的として、前記補償されたヌルが、8kHzないし16kHzの範囲にあることを特徴とする、請求項2に記載の方法。
【請求項4】
前記結果として得られる複数のチャネルにおける前記ミッド成分もしくは前記サイド成分に対する前記目標振幅応答が、周波数に亘る振幅の観点から決定され、
逆離散フーリエ変換(idft)を使用して、前記目標振幅応答を前記単一入力複数出力の全域通過フィルタのための係数に変換するステップをさらに備える
ことを特徴とする、請求項1に記載の方法。
【請求項5】
前記結果として得られる複数のチャネルにおける前記ミッド成分もしくは前記サイド成分に対する前記目標振幅応答が、周波数に亘る振幅の観点から決定され、
フェーズボコーダを使用して、前記目標振幅応答を前記単一入力複数出力の全域通過フィルタのための係数に変換するステップをさらに備える
ことを特徴とする、請求項1に記載の方法。
【請求項6】
前記目標振幅応答は、目標広帯域減衰、臨界点、フィルタ特性、およびサウンドステージ位置のうちの一つもしくは複数を含む、一つもしくは複数のパラメトリック空間的示唆を規定することを特徴とする、請求項1に記載の方法。
【請求項7】
前記フィルタ特性は、高域通過フィルタ特性、低域通過フィルタ特性帯域通過フィルタ特性、もしくは帯域除去フィルタ特性のうちの一つを含むことを特徴とする、請求項6に記載の方法。
【請求項8】
サジタル平面に沿った空間的示唆をモノラル信号に符号化して、結果として得られる複数のチャネルを生成するためのシステムであって、
周波数依存位相シフトに関連付けられる空間的示唆に基づいて、前記結果として得られる複数のチャネルにおけるミッド成分もしくはサイド成分に対する目標振幅応答を決定することと、
前記ミッド成分もしくは前記サイド成分の何れかに対する前記目標振幅応答を、単一入力複数出力の全域通過フィルタのための伝達関数に変換することと、
前記全域通過フィルタを使用して前記モノラル信号を処理することであって、前記全域通過フィルタは、前記伝達関数に基づいて構成される、ことと
を行うように構成される一つもしくは複数のコンピューティング機器
を備えることを特徴とする、システム。
【請求項9】
前記結果として得られるチャネルの前記ミッド成分もしくは前記サイド成分に対する前記目標振幅応答が、補償されたヌルの観点から決定されることを特徴とする、請求項8に記載のシステム。
【請求項10】
垂直空間的示唆を符号化する目的として、前記補償されたヌルが、8kHzないし1kHzの範囲にあることを特徴とする、請求項9に記載のシステム。
【請求項11】
前記結果として得られる複数のチャネルにおける前記ミッド成分もしくは前記サイド成分に対する前記目標振幅応答が、周波数に亘る振幅の観点から決定され、
前記一つもしくは複数のコンピューティング機器は、逆離散フーリエ変換(idft)を使用して、前記目標振幅応答を前記単一入力複数出力の全域通過フィルタのための係数に変換するようにさらに構成される
ことを特徴とする、請求項8に記載のシステム。
【請求項12】
前記結果として得られる複数のチャネルにおける前記ミッド成分もしくは前記サイド成分に対する前記目標振幅応答が、周波数に亘る振幅の観点から決定され、
前記一つもしくは複数のコンピューティング機器は、フェーズボコーダを使用して、前記目標振幅応答を前記単一入力複数出力の全域通過フィルタのための係数に変換するようにさらに構成される
ことを特徴とする、請求項8に記載のシステム。
【請求項13】
前記目標振幅応答は、目標広帯域減衰、臨界点、フィルタ特性、およびサウンドステージ位置のうちの一つもしくは複数を含む、一つもしくは複数のパラメトリック空間的示唆を規定することを特徴とする、請求項8に記載のシステム。
【請求項14】
前記フィルタ特性は、高域通過フィルタ特性、低域通過フィルタ特性、帯域通過フィルタ特性、もしくは帯域除去フィルタ特性のうちの一つを含むことを特徴とする、請求項13に記載のシステム。
【請求項15】
サジタル平面に沿った空間的示唆をモノラル信号に符号化して、結果として得られる複数のチャネルを生成するために格納される命令を含む、非一時的コンピュータ可読媒体であって、前記命令は、少なくとも一つのプロセッサによって実行されると、前記少なくとも一つのプロセッサ
周波数依存位相シフトに関連付けられる空間的示唆に基づいて、前記結果として得られる複数のチャネルにおけるミッド成分もしくはサイド成分に対する目標振幅応答を決定することと、
前記ミッド成分もしくは前記サイド成分の何れかに対する前記目標振幅応答を、単一入力複数出力の全域通過フィルタのための伝達関数に変換することと、
前記全域通過フィルタを使用して前記モノラル信号を処理することであって、前記全域通過フィルタは、前記伝達関数に基づいて構成される、ことと
を行わせることを特徴とする、非一時的コンピュータ可読媒体。
【請求項16】
前記結果として得られるチャネルの前記ミッド成分もしくは前記サイド成分に対する前記目標振幅応答が、補償されたヌルの観点から決定されることを特徴とする、請求項15に記載の非一時的コンピュータ可読媒体。
【請求項17】
垂直空間的示唆を符号化する目的として、前記補償されたヌルが、8kHzないし1kHzの範囲にあることを特徴とする、請求項16に記載の非一時的コンピュータ可読媒体。
【請求項18】
前記結果として得られる複数のチャネルにおける前記ミッド成分もしくは前記サイド成分に対する前記目標振幅応答が、周波数に亘る振幅の観点から決定され、
前記少なくとも一つのプロセッサは、逆離散フーリエ変換(idft)を使用して、前記目標振幅応答を前記単一入力複数出力の全域通過フィルタのための係数に変換するようにさらに構成される
ことを特徴とする、請求項15に記載の非一時的コンピュータ可読媒体。
【請求項19】
前記結果として得られる複数のチャネルにおける前記ミッド成分もしくは前記サイド成分に対する前記目標振幅応答が、周波数に亘る振幅の観点から決定され、
前記少なくとも一つのプロセッサは、フェーズボコーダを使用して、前記目標振幅応答を前記単一入力複数出力の全域通過フィルタのための係数に変換するようにさらに構成される
ことを特徴とする、請求項15に記載の非一時的コンピュータ可読媒体。
【請求項20】
前記目標振幅応答は、目標広帯域減衰、臨界点、およびフィルタ特性のうちの一つもしくは複数を含む、前記結果として得られる複数のチャネルの加算に対する一つもくしは複数の制約を規定することを特徴とする、請求項15に記載の非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、一般に、音声処理(audio processing)に関し、より具体的には、音声コンテンツ(audio content)への空間的示唆(spatial cues)の符号化に関する。
【背景技術】
【0002】
音声コンテンツは、音場(sound field)の空間特性を含むように符号化され得て、ユーザーが音場における空間感覚を知覚することを可能にする。例えば、特定の音源(例えば、発声(voice)または楽器など)の音声は、音声が特定の到着方向からユーザーに届いている、または特定種類の場所(例えば、小さな部屋、大きな講堂等)に位置しているという知覚などの、音声に関連付けられる空間感覚を作り出す方式において、音声コンテンツに混合されることがある。
【発明の概要】
【0003】
幾つかの実施形態は、サジタル平面(sagital plane)に沿った空間的示唆をモノラル信号(monaural signal)に符号化して、結果として得られる複数のチャネルを生成するための方法を含む。本方法は、処理回路によって、周波数依存位相シフト(frequency-dependent phase shift)に関連付けられる空間的示唆に基づいて、結果として得られる複数のチャネルのミッド成分もしくはサイド成分に対する目標振幅応答を決定するステップと、ミッド成分またはサイド成分の何れかに対する目標振幅応答を、単一入力複数出力の全域通過フィルタ(allpass filter)のための伝達関数に変換するステップと、全域通過フィルタを使用してモノラル信号を処理するステップであって、全域通過フィルタは、伝達関数に基づいて構成される、ステップとを含む。
【0004】
幾つかの実施形態は、モノラルチャネルから複数のチャネルを生成するためのシステムを含むが、複数のチャネルは、一つもしくは複数の空間的示唆によって符号化される。本システムは、周波数依存位相シフトに関連付けられる空間的示唆に基づいて、複数のチャネルのミッド成分もしくはサイド成分に対する目標振幅応答を決定するように構成される、一つもしくは複数のコンピューティング機器を含む。一つもしくは複数のコンピュータは、ミッド成分もしくはサイド成分の何れかに対する目標振幅応答を、単一入力複数出力の全域通過フィルタのための伝達関数に変換し、全域通過フィルタを使用してモノラル信号を処理するようにさらに構成されるが、全域通過フィルタは、伝達関数に基づいて構成される。
【0005】
幾つかの実施形態は、モノラルチャネルから複数のチャネルを生成するために格納される命令を含む、非一時的コンピュータ可読媒体を含むが、複数のチャネルは、一つもしくは複数の空間的示唆を用いて符号化され、この命令は、少なくとも一つのプロセッサによって実行されると、以下を行うように、少なくとも一つのプロセッサを構成する。すなわち、周波数依存位相シフトに関連付けられる空間的示唆に基づいて、結果として得られる複数のチャネルのミッド成分もしくはサイド成分に対する目標振幅応答を決定すること、ミッド成分もしくはサイド成分に対する目標振幅応答を、単一入力複数出力の全域通過フィルタの伝達関数に変換すること、および全域通過フィルタを使用してモノラル信号を処理することであって、全域通過フィルタは、伝達関数に基づいて構成される、こと。
【0006】
幾つかの実施形態は、一連のヒルベルト変換(Hilbert Transforms)を使用して音声コンテンツ(例えば、発声など)の一部分を空間的にシフトさせることに関する。幾つかの実施形態は、一つもしくは複数のプロセッサ、および非一時的コンピュータ可読媒体を含む。コンピュータ可読媒体は、一つもしくは複数のプロセッサによって実行されると、以下を行うように一つもしくは複数のプロセッサを構成する、格納済みのプログラムコードを含む。すなわち、音声チャネルを低周波数成分および高周波数成分に分離すること、第一のヒルベルト変換を高周波数成分に適用して、第一の左脚成分および第一の右脚成分を生成することであって、第一の左脚成分は、第一の右脚成分に対して90度位相がずれている、こと、第二のヒルベルト変換を第一の右脚成分に適用して、第二の左脚成分および第二の右脚成分を生成することであって、第二の左脚成分は、第二の右脚成分に対して90度位相がずれている、こと、第一の左脚成分を低周波数成分に結合させて、左チャネルを生成すること、および第二の右脚成分を低周波数成分に結合させて、右チャネルを生成すること。
【0007】
幾つかの実施形態は、格納済みのプログラムコードを含む非一時的コンピュータ可読媒体を含む。このプログラムコードは、一つもしくは複数のプロセッサによって実行されると、以下を行うように一つもしくは複数のプロセッサを構成する。すなわち、音声チャネルを低周波数成分および高周波数成分に分離すること、第一のヒルベルト変換を高周波数成分に適用して、第一の左脚成分および第一の右脚成分を生成することであって、第一の左脚成分は、第一の右脚成分に対して90度位相がずれている、こと、第二のヒルベルト変換を第一の右脚成分に適用して、第二の左脚成分および第二の右脚成分を生成することであって、第二の左脚成分は、第二の右脚成分に対して90度位相がずれている、こと、第一の左脚成分を低周波数成分に結合させて、左チャネルを生成すること、および第二の右脚成分を低周波数成分に結合させて、右チャネルを生成すること。
【0008】
幾つかの実施形態は、一つもしくは複数のプロセッサによって実行される方法を含む。本方法は、音声チャネルを低周波数成分および高周波数成分に分離するステップと、第一のヒルベルト変換を高周波数成分に適用して、第一の左脚成分および第一の右脚成分を生成するステップであって、第一の左脚成分は、第一の右脚成分に対して90度位相がずれている、ステップと、第二のヒルベルト変換を第一の右脚成分に適用して、第二の左脚成分および第二の右脚成分を生成するステップであって、第二の左脚成分は、第二の右脚成分に対して90度位相がずれている、ステップと、第一の左脚成分を低周波数成分に結合させて、左チャネルを生成するステップと、第二の右脚成分を低周波数成分に結合させて、右チャネルを生成するステップとを含む。
【図面の簡単な説明】
【0009】
図1】幾つかの実施形態による、音声処理システムを示すブロック図である。
図2】幾つかの実施形態による、コンピューティングシステム環境を示すブロック図である。
図3】幾つかの実施形態による、60度の仰角で測定される、サンプル抽出のHRTFを示すグラフを例証する図である。
図4】幾つかの実施形態による、11kHzにおける無限減衰の狭い領域に対応する目標振幅関数によって特徴付けられる、知覚的示唆(perceptual cue)の一例を示すグラフを例証する図である。
図5】幾つかの実施形態による、白色雑音(white noise)を用いて表1に示される係数を有する二次全域通過フィルタセクションを駆動することによって生成される、周波数プロットを例証する図である。
図6】一つもしくは複数の実施形態による、ヒルベルト変換を使用して実装されるPSMモジュールを示すブロック図である。
図7】一つもしくは複数の実施形態による、ヒルベルト変換器モジュールを示すブロック図である。
図8】複数のチャネル(ミッド)の加算および複数のチャネル(サイド)の差分の出力周波数応答を示す、幾つかの実施形態による、白色雑音を含む、図6におけるHPSMモジュールを駆動することによって生成される周波数プロットを例証する図である。
図9】幾つかの実施形態による、FNORDフィルタネットワークを使用して実装されるPSMモジュールを示すブロック図である。
図10A】幾つかの実施形態による、PSMモジュール900を示す詳細ブロック図である。
図10B】幾つかの実施形態による、PSMモジュールの全域通過フィルタモジュール内に実装される広帯域位相回転器(Broadband Phase Rotator)を示すブロック図である。
図11】幾つかの実施形態による、60度の垂直示唆(vertial cue)に対する振幅応答を達成するように構成される、FNORDフィルタネットワークの出力周波数応答を示す周波数応答グラフを例証する図である。
図12】一つもしくは複数の実施形態による、音声処理システム1000を示すブロック図である。
図13A】一つもしくは複数の実施形態による、直交成分生成器(orthogonal component generator)を示すブロック図である。
図13B】一つもしくは複数の実施形態による、直交成分生成器を示すブロック図である。
図13C】一つもしくは複数の実施形態による、直交成分生成器を示すブロック図である。
図14A】一つもしくは複数の実施形態による、直交成分処理器モジュールを示すブロック図である。
図14B】一つもしくは複数の実施形態による、直交成分処理器モジュールを示すブロック図を示す。
図15】一つもしくは複数の実施形態による、サブバンド空間処理器モジュール(subband spatial processor module)を示すブロック図である。
図16】一つもしくは複数の実施形態による、クロストーク補償処理器モジュール(crosstalk compensation processor module)を示すブロック図である。
図17】一つもしくは複数の実施形態による、クロストークシミュレーション処理器モジュール(crosstalk simulation processor module)を示すブロック図である。
図18】一つもしくは複数の実施形態による、クロストークキャンセル処理器モジュール(crosstalk cancellation processor module)を示すブロック図である。
図19】一つもしくは複数の実施形態による、ヒルベルト変換式知覚サウンドステージ修正(Hilbert Transform Perceptual Soundstage Modification)(HPSM)モジュールを使用する、PSM処理のためのプロセスを示すフローチャートである。
図20】幾つかの実施形態による、一次非直交回転ベース相関除去(First Order Non-Orthogonal Rotation-Based Decorrelation)(FNORD)フィルタネットワークを使用する、PSM処理のための別のプロセスを示すフローチャートである。
図21】一つもしくは複数の実施形態による、ハイパーミッド(hyper mid)成分、残留ミッド(residual mid)成分、ハイパーサイド(hyper side)成分、または残留サイド(residual side)成分のうちの少なくとも一つを使用する、空間処理のためのプロセスを示すフローチャートである。
図22】一つもしくは複数の実施形態による、ハイパーミッド成分、残留ミッド成分、ハイパーサイド成分、または残留サイド成分のうちの少なくとも一つを使用する、サブバンド空間処理(subband spatial processing)、およびクロストーク処理用補償(compensation for crosstalk processing)のためのプロセスを示すフローチャートである。
図23】幾つかの実施形態による、コンピュータを示すブロック図である。
【0010】
図は、例示のみを目的として種々の実施形態を描写している。当業者であれば、以下の考察から、本明細書に説明される原理から逸脱することなく、本明細書に例証される構造および方法の代替的な実施形態が使用され得ることを容易に認識するであろう。
【発明を実施するための形態】
【0011】
[詳細な説明]
図面(FIG.)および以下の説明は、例示のみを目的とする好適な実施形態に関する。以下の説明から、本明細書に開示される構造および方法の代替実施形態は、主張される内容の原理から逸脱することなく使用され得る、実行可能な代替形態として容易に認識されることになることは、留意されるべきである。
【0012】
本明細書に、幾つかの実施形態への参照が詳細に行われることになるが、それらの例は、添付の図に例証されている。可能な限り、類似または同様の参照番号が図に使用されることがあり、類似または同様の機能を示すことがあることは、留意されるべぎである。これらの図は、説明のみを目的として、開示されるシステム(または方法)の実施形態を描写している。当業者であれば、以下の説明から、本明細書に説明される原理から逸脱することなく、本明細書に例証される構造および方法の代替実施形態が使用され得ることを容易に認識するであろう。
【0013】
モノラル音声源への空間知覚的示唆(spatial perceptual cues)の符号化は、可聴コンテンツ(audible content)に関する複数の同時ストリームのプレゼンテーションを伴う、種々の用途において望ましいことがある。このような用途の例には以下が含まれる、すなわち、
・会議の使用例:一人もしくは複数人の遠隔話者に適用される空間知覚的示唆の追加は、全体的な音声明瞭度(voice intelligibility)を向上させ、傾聴者の全体的な没入感(sense of immersion)を高めることに貢献することができる。
・映像および音楽の再生/ストリーミングの使用例:一つもしくは複数の音声チャネル、または一つもしくは複数の音声チャネルの信号成分を、空間知覚的示唆の追加によって強調させて、ミックスの音声もしくは他の要素の明瞭度もしくは空間感覚を向上させることができる。
・共同視聴エンターテイメントの使用例:ストリームが、一つもしくは複数の遠隔話者およびエンターテイメントプログラム素材などの、個別のコンテンツチャネルであり、それらは、没入体験を形成するために混合される必要があり、一つもしくは複数の要素に空間知覚的示唆を適用することは、ミックスの要素間の知覚的区別の感覚を高め、傾聴者の知覚帯域幅を広げることができる。
【0014】
実施形態は、一つもしくは複数の音声チャネルにおける知覚的空間品質(例えば、サウンドステージ(sound stage)、および対象傾聴者の頭部を基準とする全体的な位置など)を変更する、音声システムに関する。幾つかの実施形態では、音声チャネルの知覚的空間品質の変更は、特定源のカラレーション(coloration)を空間におけるその知覚的位置から分離するために、および/もしくはそのような効果を符号化するために必要とされる増幅器およびスピーカーの必要数を低減するために使用され得る。
【0015】
音声システムによって実行される音声信号処理は、知覚サウンドステージ修正(PSM)処理と呼ばれる。PSM処理の知覚結果は、本明細書では空間的シフト(spatial shifting)と呼ばれる。心理音響効果(psychoacoustic effect)は、典型的には、音源を音声コンテンツの他の部分から知覚的に区別して、音源が頭部の上方、周囲、もしくは頭部の方に全体的にシフトすることとして、ユーザーによって体験される。この心理音響効果は、全域通過フィルタおよび遅延のネットワークによって強調されるものとして、左右のチャネル間の位相および時間の関係から得られる。幾つかの実施形態では、このフィルタおよび遅延のネットワークは、一連のヒルベルト変換のような一つもしくは複数の二次全域通過セクション(second-order allpass sections)として、または一次非直交回転ベース相関除去(FNORD)フィルタネットワークを使用して実装され得るが、これらの各々については、より詳細に後述されることになる。PSM処理の知覚結果は、様々な聴取構成(例えば、ヘッドフォンもしくはスピーカー等)に応じて、変化する可能性がある。幾つかのコンテンツおよびアルゴリズムの構成の場合、その結果は、知覚された信号が傾聴者の頭部の周囲に広がっている(例えば、拡散している)ような印象を与えることもある。モノラル入力信号(例えば、非空間音声信号など)の場合、PSM処理の拡散効果をモノラルからステレオへのアップミキシング(upmixing)に使用することができる。
【0016】
幾つかの実施形態では、音声システムは、音声信号の目標部分を音声信号の残留部分から分離し、PSM処理における種々の構成を適用して目標部分を知覚的にシフトさせ、処理結果をその残留部分と混合して戻し得る(例えば、未処理もしくは異なる処理であってもよい)。このようなシステムは、全体的な音声ミックス内の目標部分に対する明確化、上昇化、もしくはそうでなければ差分別化を行うものとして知覚することができる。幾つかの実施形態では、PSM処理は、歌声(sung voice)もしくは話声(spoken voice)を含む、音声信号の一部分を知覚的にシフトさせるために使用される。慣例により、テレビジョン、映画、もしくは音楽の音声ストリームの発声は、サウンドステージの中心に配置されることが多く、そのためにステレオ音声信号もしくはマルチチャネル音声信号のミッド成分(非空間成分もしくは相関成分とも呼ばれる)の一部である。したがって、PSM処理は、音声信号のミッド成分、またはミッド成分のスペクトルエネルギーから除去されるサイド成分(空間成分(spatial component)または非相関成分(non-correlated component)とも呼ばれる)のスペクトルエネルギーを含むハイパーミッド成分に適用され得る。
【0017】
PSM処理は、他種類の処理と組み合わせられ得る。例えば、音声システムは、音声信号のシフト部分に処理を適用して、シフト部分を知覚的に変換し、シフト部分をミックス内の他の成分と区別し得る。これらの種類の追加処理には、単一帯域もしくは複数帯域のイコライゼーション、単一帯域または複数帯域のダイナミクス処理(例えば、制限、圧縮、拡張等)、単一帯域または複数帯域の利得もしくは遅延、クロストーク処理(例えば、クロストークキャンセル処理および/もしくはクロストークシミュレーション処理など)、またはクロストーク処理用補償のうちの一つまたは複数が含まれ得る。幾つかの実施形態では、PSM処理は、音場の空間感覚を高めるために、PSM処理を介して生成される音声信号のミッド成分およびサイド成分のサブバンドが利得調整されるサブバンド空間処理などの、ミッド処理/サイド処理とともに実行され得る。
【0018】
PSM処理のための音声チャネルの分離は、種々の方法において達成し得る。幾つかの実施形態では、PSM処理は、音声信号のハイパーミッド成分のような、スペクトル的に直交する音声成分に対して実行され得る。他の実施形態では、PSM処理は、音源(例えば、発声など)に関連付けられる音声チャネルに対して実行され、処理済みのチャネルは、その後、他の音声コンテンツ(例えば、背景音楽(background music)など)と混合される。
【0019】
以下の説明は、音声プレゼンテーション機器の大部分がステレオであることに起因して、主に、モノラル信号のステレオ(すなわち、二つの出力チャネル)へのアップミキシングに焦点を当てているが、説明される技術は、より多数のチャネルを含むように容易に一般化することができると理解される。ステレオの実施形態は、ミッド処理/サイド処理の観点から説明され得るが、左右のチャネル間の位相差分が、ミッド空間/サイド空間における増幅および減衰の相補的な領域となる。
【0020】
[音声処理システムの例]
図1は、一つもしくは複数の実施形態による、音声処理システム100を示すブロック図である。システム100は、PSM処理を使用して、音声信号を空間的にシフトし、他種類の空間(例えば、ミッド/サイド)処理を適用する。システム100に関する幾つかの実施形態は、本明細書に説明されるものとは異なるコンポーネントを有する。同様に、場合によっては、本明細書に説明されるものとは異なる方式において、コンポーネント間に機能を分散させることができる。
【0021】
システム100は、PSMモジュール102、L/R-M/S変換器モジュール104、成分処理器モジュール106、M/S-L/R変換器モジュール108、およびクロストーク処理器モジュール108を含む。PSMモジュール102は、入力音声120を受信し、空間的にシフトされる左チャネル122および右チャネル124を生成する。種々の実施形態による、PSM102の動作については、図6ないし図11に関連して、より詳細に後述される
【0022】
L/R-M/S変換器モジュール104は、左チャネル122および右チャネル124を受信し、それらのチャネル122および124からミッド成分126(例えば、非空間成分など)およびサイド成分128(例えば、空間成分など)を生成する。幾つかの実施形態では、ミッド成分126は、左チャネル122および右チャネル122の加算に基づいて生成され、サイド成分128は、左チャネル122および右チャネル124の差分に基づいて生成される。幾つかの実施形態では、M/S空間における点へのL/R空間における点の変換は、式(1)に従って次のように表現され得る。すなわち、
【0023】
【数1】
【0024】
一方、逆変換は、式(2)に従って次のように表され得る。すなわち、
【0025】
【数2】
【0026】
他の実施形態では、他のL/R-M/S型変換が、ミッド成分126およびサイド成分128を生成するために使用され得ると理解される。幾つかの実施形態では、式(1)および(2)に示される変換は、計算の複雑さの軽減に起因して、順方向変換および逆方向変換の両方が√2によって拡大縮小される真の正規直交形式(true orthonormal form)の代わりに使用され得る。説明を容易にするために、使用される具体的な変換に関係なく、右側にある乗算によって行ベクトルの座標を変換する慣例と、変換された座標がその上にラベルとして基底を乗せる表記法とが、以下の式(3)に示されるように使用されることになる。すなわち、
【0027】
【数3】
【0028】
成分処理器モジュール106は、ミッド成分126を処理して、処理済みのミッド成分130を生成し、サイド成分128を処理して、処理済みのサイド成分314を生成する。成分126および128の各々における処理は、空間的示唆の処理(例えば、振幅もしくは遅延ベースのパンニング(panning)、バイノーラル処理(binaural processing)等)、単一帯域もしくは複数帯域のイコライゼーション、単一帯域もしくは複数帯域のダイナミクス処理(例えば、圧縮、拡張、制限等)、単一帯域もしくは複数帯域の利得段階もしくは遅延段階、音声効果の追加、または他種類の処理などの、種々の種類のフィルタ抽出を含み得る。幾つかの実施形態では、成分処理器モジュール106は、ミッド成分126およびサイド成分128を使用して、サブバンド空間処理および/もしくはクロストーク補償処理を実行する。サブバンド空間処理は、音声信号を空間的に強調させるために、ミッド成分およびサイド成分の周波数サブバンドに対して実行される処理である。クロストーク補償処理は、スピーカー用のクロストーク補正、またはヘッドフォン用のクロストークシミュレーションなどの、クロストーク処理によって引き起こされるスペクトルのアーティファクト(spectral artifacts)に対して調整する処理である。成分処理器モジュール106に含まれ得る、種々の成分については、図12Aないし13を参照して、さらに説明する。
【0029】
M/S-L/R変換器モジュール108は、処理済みのミッド成分130および処理済みのサイド成分132を受信し、処理済みの左成分134および処理済みの右成分136を生成する。幾つかの実施形態では、M/S-L/R変換器モジュール108は、L/R-M/S変換器モジュール104によって実行される変換の逆に基づいて、処理済みのミッド成分130およびサイド成分132を変換し、例えば、処理済みの左成分134は、処理済みのミッド成分130および処理済みのサイド成分132の加算に基づいて生成され、処理済みの右成分136は、処理済みのミッド成分130および処理されたサイド成分132の差分に基づいて生成される。他のM/S-L/R変換種類は、処理済みの左成分134および処理済みの右成分136を生成するために使用され得る。
【0030】
クロストーク処理器モジュール110は、処理済みの左成分134および処理済みの右成分136を受信し、クロストーク処理を実行する。クロストーク処理には、例えば、クロストークシミュレーションもしくはクロストークキャンセルが含まれる。クロストークシミュレーションは、ラウドスピーカーの効果のシミュレーションを行うために、音声信号(例えば、ヘッドフォンを介する出力など)に対して実行される処理である。クロストークキャンセルは、ラウドスピーカーによって引き起こされるクロストークを低減するために、音声信号(例えば、スピーカーを介する出力など)に対して実行される処理である。クロストーク処理器モジュール110は、左チャネル138および右出力チャネル140を出力する。幾つかの実施形態では、クロストーク処理(例えば、シミュレーションもしくはキャンセルなど)は、左チャネル122および右チャネル124をミッド成分およびサイド成分に変換する前などの、成分処理の前に実行され得る。クロストーク処理器モジュール110に含まれ得る、種々の成分については、図15および16を参照して、さらに説明する。
【0031】
幾つかの実施形態では、PSMモジュール100は、成分処理器モジュール106に組み込まれる。L/R-M/S変換器モジュール104は、左チャネルおよび右チャネルを受信し、これらは、音声処理システム100への(例えば、ステレオ)入力を表し得る。L/R-M/S変換器モジュール104は、左右の入力チャネルを使用して、ミッド成分およびサイド成分を生成する。成分処理器モジュール106のPSMモジュール100は、入力音声102について本明細書に考察されるように、入力としてミッド成分および/もしくはサイド成分を処理して、左右のチャネルを生成する。また、成分処理器モジュール106は、ミッド成分およびサイド成分に対して他種類の処理を実行し得て、M/S-L/R変換器モジュール108は、処理済みのミッド成分およびサイド成分から左右のチャネルを生成する。HPSMモジュール100によって生成される左チャネルは、M/S-L/R変換器モジュール108によって生成される左チャネルと結合されて、処理済みの左成分を生成する。PSMモジュール100によって生成される右チャネルは、M/S-L/R変換器モジュール108によって生成される右チャネルと結合されて、処理済みの右成分を生成する。
【0032】
システム100は、左チャネル138を左スピーカー112に提供し、右チャネル140を右スピーカー114に提供する。スピーカー112および114は、スマートフォン、タブレット、スマートスピーカー、ラップトップ、デスクトップ、エクササイズマシン等のコンポーネントであり得る。スピーカー112および114は、システム100を含む機器の一部であり得る、またはネットワークを介してシステム100に接続されるように、システム100とは別個であり得る。ネットワークには、有線接続および/もしくは無線接続が含まれ得る。ネットワークには、ローカルエリアネットワーク、ワイドエリアネットワーク(例えば、インターネットを含む)、もしくはそれらの組み合わせが含まれ得る。
【0033】
図2は、幾つかの実施形態による、コンピューティングシステム環境200を示すブロック図である。コンピューティングシステム200は、音声システム202を含み得て、音声システム202は、ネットワーク208を介してユーザー機器210aおよび210bに接続される、一つもしくは複数のコンピューティング機器(例えば、サーバなど)を含み得る。音声システム202は、ネットワーク208を介してユーザー機器210aおよび210b(個別にユーザー機器210とも呼ばれる)に音声コンテンツを提供する。ネットワーク208は、システム202およびユーザー機器210の間の通信を促進する。ネットワーク106は、インターネットを含む各種種類のネットワークを含み得る。
【0034】
音声システム202は、一つもしくは複数のプロセッサ204、およびコンピュータ可読媒体206を含む。一つもしくは複数のプロセッサ204は、モノラルチャネルから複数の出力チャネルを生成するなどの、機能を一つもしくは複数のプロセッサ204に実行させるプログラムモジュールを実行する。プロセッサ204は、中央処理ユニット(CPU)、グラフィックス処理ユニット(GPU)、コントローラ、ステートマシン、他種類の処理回路、またはこれらのうちの一つもしくは複数の組み合わせを含み得る。プロセッサ204は、とりわけ、プログラムモジュール、オペレーティングシステムデータを格納するローカルメモリをさらに含み得る。
【0035】
コンピュータ可読媒体206は、PSMモジュール102、成分処理器モジュール106、クロストーク処理器モジュール110、L/R変換器モジュール104およびM/S変換器モジュール108、ならびにチャネル加算モジュール212のためのプログラムコードを格納する非一時的記憶媒体である。PSMモジュール102は、モノラルチャネルから複数の出力チャネルを生成し、これは、成分処理器モジュール106、クロストーク処理器モジュール110、ならびに/またはL/R変換器モジュール104およびM/S変換器モジュール108を使用して、さらに処理され得る。システム202は、複数の出力チャネルをユーザー機器210aに提供し、ユーザー機器210aは、出力チャネルの各々のレンダリングを行うための複数のスピーカー214を含む。
【0036】
チャネル加算モジュール212は、PSMモジュール102および/もしくは他のモジュールによって生成される複数の出力チャネルを共に加算することによって、モノラル出力チャネルを生成する。システム202は、モノラル出力チャネルをユーザー機器210bに提供し、ユーザー機器210bは、モノラル出力チャネルのレンダリングを行うための単一のスピーカー216を含む。幾つかの実施形態では、チャネル加算モジュール212は、ユーザー機器210bに配置される。音声システム202は、複数の出力チャネルをユーザー機器210bに提供し、ユーザー機器210bは、複数のチャネルをスピーカー216のためのモノラル出力チャネルに変換する。ユーザー機器210は、音声コンテンツをユーザーに提示する。ユーザー機器210は、音楽プレーヤー、スマートスピーカー、スマートフォン、ウェアラブル機器、タブレット、ラップトップ、またはデスクトップなどの、ユーザーのコンピューティング機器であり得る。
【0037】
[ミッド空間/サイド空間のカラレーション]
幾つかの実施形態では、空間的示唆は、左空間/右空間においてカラレーション効果を回避しつつ、ミッド空間/サイド空間においてカラレーション効果を作成することによって、音声信号に符号化される。幾つかの実施形態では、これは、具体的に選択される特性を有する全域通過フィルタを左空間/右空間に適用することによって達成されて、ミッド空間/サイド空間において目標のカラレーションをもたらす。例えば、二チャネルシステムでは、左位相角/右位相角とミッド利得/サイド利得との関係は、以下の式(4)を使用して表され得る。すなわち、
【0038】
【数4】
【0039】
ここで、
【0040】
【数5】
【0041】
は、特定の周波数ωにおける、それぞれデシベル単位のミッドおよびサイドの目標利得係数(target gain factors)によって構成される、二次元行ベクトルであり、
【0042】
【数6】
【0043】
は、左右のチャネル間における位相関係の目標関数である。
【0044】
【数7】
【0045】
について式(4)を解くと、以下の式(5)および(6)に従って、左空間/右空間に適用するために必要とされる周波数依存位相差分(frequency-dependent phase differential)が提供される。すなわち、
【0046】
【数8】
【0047】
システムが左右の空間においてカラーレス(colorless)であるという制約が適用される場合、ミッド成分もしくはサイド成分の伝達関数の何れかのみを指定することができることに留意されたい。そのため、式(5)および(6)の系は過剰決定(over-determined)となり、必要とされる対称性を破ることなく、上記の式のうちの一つのみを解くことができる。幾つかの実施形態では、特定の式を選択することにより、ミッド成分もしくはサイド成分の何れかに対する制御が得られる。システムが左右の空間においてカラーレスであるという制約が取り払われたとすれば、さらなる自由度が達成される可能性がある。二つより多いチャネルを有するシステムでは、ミッドおよびサイドの代わりに、ペアワイズ変換もしくは階層的な加算および差分の変換などの様々な技術が使用され得る。
【0048】
[仰角示唆(elevation cues)を符号化するための全域通過フィルタの実装例]
幾つかの実施形態では、空間知覚的示唆は、左右の信号をカラーレスであるように制約しつつ、周波数依存振幅示唆(frequency-dependeant amplitude cues)(すなわち、カラレーション)をミッド空間/サイド空間に埋め込むことによって、音声信号に符号化され得る。例えば、仰角示唆(例えば、サジタル平面に沿って位置する空間知覚的示唆など)は、仰角に対する左右の示唆が理論的にカラレーションにおいて対称であるため、このフレームワークを使用して符号化され得る。
【0049】
幾つかの実施形態では、頭部関連の伝達関数(Head-Related Transfer Function)(HRTF)ベースの仰角示唆における顕著な特徴は、約8kHzで開始し、ほぼ16kHzまで仰角の関数として単調に上昇するノッチ(notch)であり、これは、仰角を符号化するためのミッドチャネルの適切なカラレーションを導出するために使用される。このミッド符号化示唆(mid-encoded cue)を使用すると、対応する周波数依存位相シフトは導出され得て、これは、後述されるもののようなフィルタネットワーク(例えば、PSMモジュール100など)を介して実装される機能を導出するためにさらに使用され得る。幾つかの実施形態では、HRTFベースの仰角示唆は、約8kHzで開始し、ほぼ12kHzまで仰角の関数として単調に上昇するノッチとして特徴付けられ得る。
【0050】
説明を容易にするために、以下のフィルタフレームワークの例は、幾つかの実施形態に従って、目標仰角が60度である(例えば、音声コンテンツを水平より60度上方に空間的にシフトする)幾つかの実施形態に従って、同じ知覚的示唆の符号化に関連して説明される。ただし、他の実施形態では、同様の技術は、異なる仰角を有する知覚的示唆を符号化するために使用されると理解される。図3は、幾つかの実施形態による、60度の仰角で測定された、サンプル抽出のHRTFを示すグラフを例証している。図4は、幾つかの実施形態による、ほぼ11kHzにおける無限減衰の狭い領域に対応する目標振幅関数によって特徴付けられる、知覚的示唆の一例を示すグラフを例証している。このような示唆は、広範な各種プレゼンテーションのシナリオに亘って、ほとんどの人において仰角知覚を作り出すために使用される可能性がある。図4におけるグラフは、サンプル抽出のHRTFを簡略化して例証しているが、より複雑な示唆も、本明細書に説明されるフレームワークに基づいて導出され得ると理解される。
【0051】
[二次全域通過セクションを使用する設計]
幾つかの実施形態では、PSMモジュール100は、二次全域通過フィルタにおける二つの独立したカスケード、および遅延要素を使用して実装されて、図4に関連して上述されるような知覚的示唆を符号化するために、左空間/右空間において所望の位相シフトを達成する。幾つかの実施形態では、二次セクションは、双二次セクション(biquad sections)として実装され、その係数は、最大二つの遅延サンプルのフィードバックタップおよびフィードフォワードタップに適用される。本明細書に考察されるように、それぞれ1サンプルおよび2サンプルのフィードバック係数A1およびA2、ならびにそれぞれゼロサンプル、1サンプル、および2サンプルのフィードフォワード係数B0、B1、およびB2を命名する慣例が使用される。
【0052】
幾つかの実施形態では、PSMモジュール100は、極点および零点のキャンセルを実行するように構成される二次全域通過フィルタを使用して実装されて、位相応答が変更される間、伝達関数の振幅成分を平坦に保持することを可能にする。左右の空間における両方のチャネルに対して全域通過フィルタセクションを使用することにより、スペクトル全体に亘る特定の位相シフトを保証することができる。これには、左側および右側の間において所与の位相オフセットを許容するという追加の利点があり、その結果、ミッド空間/サイド空間における望ましいヌルに加えて、空間の広がり感の増加がもたらされることになる。
【0053】
以下の表1は、幾つかの実施形態による、右チャネルに追加の2サンプル遅延を有する二次全域通過フィルタのフレームワークにおいて使用され得る、双二次係数(biquad coefficients)のセット例を例証している。表1に例証される双二次係数は、44.1kHzのサンプリングレートのために設計され得るが、他のサンプリングレート(例えば、48kHzなど)を有するシステムにも同様に使用され得る。
【0054】
【表1】
【0055】
表1に示される係数を有するフィルタのネットワークは、11kHZにあるミッド空間/サイド空間において顕著なヌル/増幅をもたらす、左/右空間において適切な位相応答を生成し得る。図5は、幾つかの実施形態による、表1に示される係数を有する二次全域通過フィルタセクションを白色雑音によって駆動することによって生成される周波数プロットを例証し、複数のチャネル(ミッド)の加算502と複数のチャネル(サイド)の差分504との出力周波数応答を示している。
【0056】
幾つかの実施形態では、二次全域通過フィルタセクションを使用して実装されるPSMモジュール100は、クロスオーバーネットワークを使用してさらに拡張されて、それを必要としない周波数領域に対する処理を除外し得る。クロスオーバーネットワークの使用は、不必要な聴覚データ(auditory data)を排除するために、知覚的に重要な示唆に関するさらなる処理を許容することによって、実施形態の柔軟性を増加し得る。
【0057】
幾つかの実施形態では、二次全域通過フィルタセクションを使用して実装されるPSMモジュール100は、より詳細に後述されることになるように、直列連鎖ヒルベルト変換(serially chained Hilbert Transforms)のネットワークを使用して実装され得る。
【0058】
[ヒルベルト変換式知覚サウンドステージ修正(HPSM)モジュールの例]
図6は、一つもしくは複数の実施形態による、ヒルベルト変換を使用して実装されるPSMモジュールを示すブロック図である。PSMモジュール600は、ヒルベルト変換式知覚サウンドステージ修正(HPSM)モジュールとも呼ばれ、直列連鎖ヒルベルト変換のネットワークを(図1に示される入力音声120に相当し得る)入力音声602に適用して、入力音声602を知覚的にシフトさせる。
【0059】
モジュール600は、クロスオーバーネットワークモジュール604、利得ユニット610、利得ユニット612、ヒルベルト変換器モジュール614、ヒルベルト変換器モジュール620、遅延ユニット626、利得ユニット628、遅延ユニット630、利得ユニット630、利得ユニット632、加算ユニット634、および加算ユニット636を含む。モジュール600に関する幾つかの実施形態は、本明細書に説明されるものとは異なるコンポーネントを有する。同様に、場合によっては、機能は、本明細書に説明されるものとは異なる方式において、コンポーネント間に分散することができる。
【0060】
クロスオーバーネットワークモジュール604は、入力音声602を受信し、低周波数成分606および高周波数成分608を生成する。低周波数成分には、高周波数成分608のサブバンドよりも低い周波数を有する入力音声602のサブバンドが含まれる。幾つかの実施形態では、低周波数成分606は、低周波を含む入力音声の第一の部分を含み、高周波数成分608は、高周波を含む入力音声の残りの部分を含む。
【0061】
より詳細に後述されるように、高周波数成分608は、一連のヒルベルト変換(series of Hilbert Transforms)を使用して処理され、一方、低周波数成分606は、一連のヒルベルト変換を迂回し、その後、低周波数成分および処理済みの高周波数成分608が再結合される。周波数成分606および高周波数成分608の間のクロスオーバー周波数は、調整可能であり得る。例えば、より多くの周波数が高周波数成分608に含まれて、HPSMモジュール600による空間的シフトの知覚強度を増加し得る、一方、より多くの周波数が低周波数成分606に含まれて、シフトの知覚強度を低減し得る。別の例では、クロスオーバー周波数は、関心のある音源(例えば、発声など)に対する周波数が高周波数成分608に含まれるように設定される。
【0062】
入力音声602は、モノラルチャネルを含んでもよく、あるいはステレオ信号もしくは他のマルチチャネル信号(例えば、サラウンドサウンド(surround sound)、アンビソニックス(ambisonics)等)のミックスダウン(mixdown)であってもよい。幾つかの実施形態では、入力音声602は、音声ミックス内に組み込まれるべきである、音源に関連付けられる音声コンテンツである。例えば、入力音声602は、モジュール600によって処理される発声であり得て、処理結果が、他の音声コンテンツ(例えば、背景音楽など)と組み合わされて、音声ミックスを生成する。
【0063】
利得ユニット610は、低周波数成分606に利得を適用し、利得ユニット612は、高周波数成分608に利得を適用する。利得ユニット610および612は、低周波数成分606および高周波数成分608の全体的なレベルを相互に調整するために使用され得る。幾つかの実施形態では、利得ユニット610もしくは利得ユニット612は、モジュール600から省略され得る。
【0064】
ヒルベルト変換器モジュール614および620は、一連のヒルベルト変換を高周波数成分608に適用する。ヒルベルト変換器モジュール614は、高周波数成分608にヒルベルト変換を適用して、左脚成分616および右脚成分618を生成する。左脚成分616および右脚成分618は、相互に対して90度位相がずれている音声成分である。幾つかの実施形態では、左脚成分616および右脚成分618は、例えば、20度から160度までの間などの、90度以外の角度で相互に対して位相がずれている。
【0065】
ヒルベルト変換器モジュール620は、ヒルベルト変換器モジュール614によって生成された右脚成分618にヒルベルト変換を適用して、左脚成分122および右脚成分624を生成する。左脚成分622および右脚成分624は、相互に対して90度位相がずれている音声成分である。幾つかの実施形態では、ヒルベルト変換器モジュール620は、左脚成分122を生成することなく、右脚成分624を生成する。幾つかの実施形態では、左脚成分622および右脚成分624は、例えば、20度から160度までの間などの、90度以外の角度で相互に対して位相がずれている。
【0066】
幾つかの実施形態では、ヒルベルト変換器モジュール614および620の各々は、時間領域において実装され、図7に関連してより詳細に後述されるように、カスケード接続される全域通過フィルタおよび遅延を含む。他の実施形態では、ヒルベルト変換器モジュール614および620は、周波数領域において実装される。
【0067】
遅延ユニット626、利得ユニット628、遅延ユニット630、および利得ユニット632は、モジュール600によるプロセスの知覚結果を操作するための調整制御を提供する。遅延ユニット626は、ヒルベルト変換器モジュール614によって生成される左脚成分616に時間遅延を適用する。利得ユニット628は、左脚成分616に利得を適用する。幾つかの実施形態では、遅延ユニット626もしくは利得ユニット628は、モジュール600から省略され得る。
【0068】
遅延ユニット630は、ヒルベルト変換器モジュール620によって生成される右脚成分624に時間遅延を適用する。利得ユニット632は、右脚成分624に利得を適用する。幾つかの実施形態では、遅延ユニット630または利得ユニット632は、モジュール600から省略され得る。
【0069】
加算ユニット634は、低周波数成分606を左脚成分616と結合させて、左チャネル642を生成する。左脚成分616は、一連において第一のヒルベルト変換器モジュール614からの出力である。左脚成分616は、遅延ユニット626によって適用される遅延と、利得ユニット628によって適用される利得とを含み得る。
【0070】
加算ユニット636は、低周波数成分606を右脚成分624と結合させて、右チャネル644を生成する。右脚成分624は、一連において第二のヒルベルト変換器モジュール620からの出力である。右脚成分624は、遅延ユニット626によって適用される遅延と、利得ユニット628によって適用される利得とを含み得る。
【0071】
図7は、一つもしくは複数の実施形態による、ヒルベルト変換器モジュール700を示すブロック図である。ヒルベルト変換器モジュール700は、ヒルベルト変換器モジュール614もしくはヒルベルト変換器モジュール620の一例である。ヒルベルト変換器モジュール700は、入力成分702を受信し、入力成分702を使用して左脚成分712および右脚成分724を生成する。ヒルベルト変換器モジュール700に関する幾つかの実施形態は、本明細書に説明されるものとは異なるコンポーネントを有する。同様に、場合によっては、機能は、本明細書に説明されるものとは異なる方式において、コンポーネント間に分散することができる。
【0072】
ヒルベルト変換器モジュール700は、左脚成分712を生成するための全域通過フィルタのカスケードモジュール740、遅延ユニット714、ならびに右脚成分724を生成するための全域通過フィルタのカスケードモジュール742を含む。全域通過フィルタのカスケードモジュール714は、一連の全域通過フィルタ704、706、708、および710を含む。遅延ユニット714は、入力成分702に時間遅延を適用する。全域通過フィルタのカスケードモジュール742は、一連の全域通過フィルタ716、718、720、および722を含む。全域通過フィルタ704ないし710、および716ないし722の各々は、異なる周波数間の位相関係を変化させつつ、利得において等しい周波数を通過させる。幾つかの実施形態では、各全域通過フィルタ704ないし710、および716ないし722は、式(7)によって定義されるような双二次フィルタ(biquad filter)である。
【0073】
【数9】
【0074】
ここで、zは、複素変数であり、a、a、a、b、b、およびbは、デジタルフィルタ係数である。異なる双二次フィルタには、異なる位相変化を適用するための異なる係数が含まれ得る。
【0075】
全域通過フィルタカスケードモジュール740および742は、相違する数の全域通過フィルタをそれぞれ含み得る。ヒルベルト変換器モジュール700は、左脚成分712および右脚成分724の各々について4個ずつ、合計8個の全域通過フィルタを備える8次フィルタである。他の実施形態では、ヒルベルト変換器モジュール700は、8次フィルタ(例えば、全域通過フィルタのカスケードモジュール740および742の各々について4個の全域通過フィルタなど)または6次フィルタ(例えば、全域通過フィルタカスケードのモジュール740および742の各々について3個の全域通過フィルタなど)である。
【0076】
図6に関連して上記で考察されるように、モジュール600は、一連のヒルベルト変換器モジュール614および620を含む。ヒルベルト変換器モジュール614および620の各々に対してヒルベルト変換器モジュール700を使用すると、左脚成分616は、高周波数成分608に適用される一つの全域通過フィルタカスケードモジュール740によって生成される。右脚成分624は、二つの遅延ユニット714および二つの全域通過フィルタのカスケードモジュール742による、ヒルベルト変換器モジュール700を通過する2回のパスによって生成される。幾つかの実施形態では、ヒルベルト変換器モジュール614および620は、異なっていてもよい。例えば、ヒルベルト変換器モジュール614および620は、ヒルベルト変換器モジュールのうちの一つについて8次フィルタ、ならびにヒルベルト変換器モジュールの別の一つについて6次フィルタなどの、異なる次数のフィルタを含み得る。
【0077】
ヒルベルト変換器モジュール614および620に対してヒルベルト変換器モジュール700を使用すると、右脚成分624は、全域通過フィルタとヒルベルト変換器モジュール620の遅延とによって生成される、右脚成分618に対する位相および遅延関係を含む。右脚成分624は、ヒルベルト変換器モジュール614および620における全域通過フィルタおよび遅延によって生成される、高周波数成分608との位相および遅延関係も含む。幾つかの実施形態では、ヒルベルト変換器モジュール620は、右脚成分618ではなく左脚成分616を使用して、左脚成分622および右脚成分624を生成する。これは、結果として、右脚成分624が、ヒルベルト変換614の全域通過フィルタ(例えば、および遅延なし)と、ヒルベルト変換器モジュール620の遅延および全域通過フィルタとによって生成される高周波数成分608に対する位相および遅延関係を有することをもたらす。
【0078】
図8は、幾つかの実施形態による、(図6において説明されるような)HPSMモジュールを白色雑音によって駆動することによって生成される周波数プロットを例証し、複数のチャネル(ミッド)の加算802と、複数のチャネル(サイド)の差分804との出力周波数応答を示している。
【0079】
図8に示されるように、このフィルタは、約11kHzの領域において所望の知覚的示唆を確かに生成する一方で、より低い周波数においてミッドおよびサイドに付加的なカラレーションも付与する。幾つかの実施形態では、これは、HPSMモジュールが所望の周波数範囲(例えば、高周波数成分など)内の音声データのみを処理するように、入力オーディオにクロスオーバーネットワーク(図6に図示されたクロスオーバーネットワークモジュール604など)を適用することによって、またはスペクトル変換のその領域に対応する極点/零点のペアを直接に除去することによって、補正することができる。
【0080】
[一次非直交回転ベースの相関除去(FNORD)を使用する設計]
幾つかの実施形態では、一次非直交回転ベースの相関除去(FNORD)フィルタネットワークを使用して、同様の知覚効果が達成され得る。図9は、幾つかの実施形態による、FNORDフィルタネットワークを使用して実装される、PSMモジュール900を示すブロック図である。PSMモジュール900は、図1に例証されるPSMモジュール102に相当し得るが、モノラルチャネルを複数のチャネルに相関除去することに備えており、振幅応答モジュール902、全域通過フィルタ構成モジュール904、および全域通過フィルタモジュール906を含む。PSMモジュール900は、モノラル入力チャネルx(t)912を処理して、スピーカー910aに提供されるチャネルy(t)、およびスピーカー910b(図1に例証される左スピーカー112および右スピーカー114に相当し得る)に提供されるチャネルy(t)などの、複数の出力チャネルを生成する。二つの出力チャネルが図示されているが、PSMモジュール900は、任意数の出力チャネル(チャネルy(t)とそれぞれ呼ばれる)を生成し得る。PSMモジュール900は、音楽プレーヤー、スピーカー、スマートスピーカー、スマートフォン、ウェアラブル機器、タブレット、ラップトップ、またはデスクトップなどの、コンピューティング機器の一部として実装され得る。図9は、全域通過フィルタモジュール906に加えて、振幅応答モジュール902およびフィルタ構成モジュール904を含むものとしてPSMモジュール900を例証しているが、幾つかの実施形態では、PSMモジュール900は、PSMモジュール900とは別に実装される振幅応答モジュール902および/もしくはフィルタ構成モジュール904を備える、全域通過フィルタモジュール906を含み得る。
【0081】
振幅応答モジュール902は、出力チャネルy(t)(例えば、出力チャネルy(t)のミッド成分およびサイド成分など)に符号化される一つもしくは複数の空間的示唆を規定する、目標振幅応答を決定する。目標振幅応答は、周波数の関数としての振幅のように、チャネルの振幅値および周波数値(例えば、チャネルのミッド成分およびサイド成分など)の間における関係によって規定される。幾つかの実施形態では、目標振幅応答は、チャネル上の一つの示唆もしくは空間的示唆を規定し、これには、目標広帯域減衰、目標サブバンド減衰、臨界点、フィルタ特性、またはサウンドステージ位置が含まれ得る。振幅応答モジュール902は、データ914およびモノラルチャネルx(t)912を受信し、これらの入力を使用して目標振幅応答を決定し得る。データ914は、符号化される空間的示唆の特性、プレゼンテーション機器(例えば、一つもしくは複数のスピーカなど)の特性、音声データの予想内容、または場面におけるリスナーの知覚能力などの情報を含み得る。幾つかの実施形態では、モノラルチャネルx(t)912は、図1に例証される音声入力120、または音声入力の一部分(例えば、図6に例証される入力音声602の高周波数成分608などの、入力音声の高周波数成分など)に相当し得る。モノラルチャネルx(t)912が音声入力の一部分に対応する実施形態では、出力チャネルy(t)は、(例えば、図1に例証されるように、低周波数成分を有する)音声入力の残りの部分に対応するチャネルと結合されて、結合済みの出力チャネルを生成し得る。
【0082】
目標広帯域減衰は、全ての周波数に亘る減衰の仕様である。目標サブバンド減衰は、サブバンドによって規定される周波数範囲に対する振幅の仕様である。目標振幅応答には、異なるサブバンドにそれぞれ対する一つもしくは複数の目標サブバンド減衰値が含まれることがある。
【0083】
臨界点は、フィルタの目標振幅応答の曲率の仕様であり、出力チャネルのうちの一つ(例えば、出力チャネルのサイド成分など)に対する利得が、-3dBもしくは-∞dBなどの、予め定義された値になる周波数値として記述される。この点の配置は、目標振幅応答の曲率に全体的な影響を与える可能性がある。臨界点の一例は、目標振幅応答が-∞dBとなる周波数に対応する。目標振幅応答の動作は、この点に近い周波数で信号を無効にすることであるため、この臨界点はヌル点である。臨界点の別の例は、目標振幅応答が-3dBとなる周波数に対応する。加算チャネルおよび差分チャネルに対する目標振幅応答の動作(例えば、チャネルのミッド成分およびサイド成分など)がこの点において交差するため、この臨界点はクロスオーバーポイントである。
【0084】
フィルタ特性は、チャネルのミッド成分およびサイド成分を如何にフィルタ抽出するかを指定するパラメータである。フィルタ特性の例には、高域通過フィルタ特性、低域通過特性、帯域通過特性、または帯域除去特性が含まれる。フィルタ特性は、それが等化フィルタ抽出(equalization filtering)の結果であるかのように、結果として得られる加算の形状を表す。等化フィルタ抽出は、どの周波数がフィルタを通過し得るか、またはどの周波数が拒否されるかという観点から説明され得る。そのため、低域通過特性は、変曲点(inflection point)より下の周波数を通過させ、変曲点より上の周波数を減衰させることを許容する。高域通過特性は、変曲点より上の周波数を通過させ、変曲点より下の周波数を減衰させることにより、その逆を行う。帯域通過特性は、変曲点の周囲の帯域における周波数を通過させることを許容し、他の周波数を減衰させる。帯域除去特性は、変曲点の周囲の帯域における周波数を拒否し、他の周波数を通過させることを許容する。
【0085】
目標振幅応答は、出力チャネルy(t)に符号化される複数の空間的示唆を定義し得る。例えば、目標振幅応答は、臨界点によって指定される空間的示唆と、全域通過フィルタのミッド成分もしくはサイド成分のフィルタ特性を規定し得る。別の例では、目標振幅応答は、目標広帯域減衰、臨界点、およびフィルタ特性によって指定される空間的示唆を規定し得る。独立した仕様としてあるものと説明されているが、この仕様は、パラメータ空間のほとんどの領域に対して相互に依存している可能性がある。この結果は、システムによって位相に関して非線形になることに起因している可能性がある。これに対処するために、目標振幅応答パラメータの非線形関数である、目標振幅応答の付加的でより高いレベルの記述子(descriptors)が考案され得る。
【0086】
フィルタ構成モジュール904は、振幅応答モジュール902から受信される目標振幅応答に基づいて、単一入力複数出力の全域通過フィルタの特性を決定する。特に、フィルタ構成モジュールは、目標振幅応答に基づいて全域通過フィルタの伝達関数を決定し、その伝達関数に基づいて全域通過フィルタの係数を決定する。全域通過フィルタは、目標振幅応答に関して記述される空間的示唆を符号化する非相関フィルタであり、モノラル入力チャネルx(t)に適用されて、出力チャネルy(t)およびy(t)を生成する。
【0087】
全域通過フィルタには、目標振幅応答によって規定される空間的示唆および/もしくは制約に基づいて、様々な構成およびパラメータが含まれ得る。符号化される空間的示唆の目標振幅応答を有するフィルタは、カラーレスであり得て、例えば、個々の出力チャネル(例えば、左/右出力チャネルなど)のスペクトル内容(例えば、全体など)を保存する。そのため、このフィルタは、左右の信号のスペクトル内容を維持しつつ、周波数依存振幅示唆の形式においてミッド空間/サイド空間にカラレーションを埋め込むことによって、仰角示唆を符号化するために使用される。フィルタはカラーレスであるため、モノラルコンテンツ(monaural content)は、サウンドステージにおける(例えば、目標仰角によって指定されるような)特定の位置に配置することができ、音声の空間的配置は、その全体的なカラレーションから減結合される。
【0088】
図10Aおよび10Bは、幾つかの実施形態による、一次非直交回転ベースの相関除去(FNORD)技術に基づくPSMモジュールの例を示すブロック図である。図10Aは、幾つかの実施形態による、PSMモジュール900の詳細図を示し、一方、図10Bは、幾つかの実施形態による、PSMモジュール900の全域通過フィルタモジュール906内の広帯域位相回転器1004のより詳細な図を提供する。
【0089】
図10Aにおけるように、全域通過フィルタモジュール906は、モノラル入力音声信号x(t)912、回転制御パラメータθbf1048、および一次係数βbf1050の形式において情報を受信する。入力音声信号x(t)912および回転制御パラメータθbf1048は、広帯域位相回転器(broadband phase rotator)1004によって利用され、広帯域位相回転器1004は、回転制御パラメータθbf1048を使用して入力音声信号912を処理して、左広帯域回転成分1020および右広帯域回転成分1022を生成する。次いで、左広帯域回転成分1020は、更なる処理のために狭帯域位相回転器(narrow-band phase rotator)1024に提供され、一方、右広帯域回転成分1022は、幾つかの実施形態による、PSMモジュール900の出力チャネルy(t)として(例えば、右出力チャネルとして)出力される。狭帯域位相回転器1024は、広帯域位相回転器1004から左広帯域回転成分1020を受信し、フィルタ構成モジュール904から一次係数βbf1050を受信して、狭帯域回転成分1028を生成し、狭帯域回転成分1028は、PSMモジュール900の(例えば、左出力チャネルのような)出力チャネルy(t)として提供される。
【0090】
幾つかの実施形態によれば、振幅応答モジュール902を構成するための制御データ914は、臨界点f1038、フィルタ特性θbf1036、およびサウンドステージ位置Γ1040を含み得る。このデータは、振幅応答モジュール902を介してPSMモジュール900に提供され、振幅応答モジュール902は、(ラジアン単位の)臨界点coc1044、フィルタ特性θbf1042、および二次項(secondary term)φ1046の形式においてデータのミッド表現を決定する。幾つかの実施形態では、振幅応答モジュール902は、入力音声信号x(t)912の一つもしくは複数のパラメータに基づいて、制御データ914のパラメータ(例えば、臨界点f1038、フィルタ特性θbf1036、および/もしくはサウンドステージ位置Γ1040)の一つもしくは複数を変更する。図10Aに示されるような幾つかの実施形態では、フィルタ特性θbf1042は、フィルタ特性θbf1036と等価である。これらのミッド表現1042、1044、および1046は、フィルタ構成モジュール904に提供され、フィルタ構成モジュール904は、少なくとも一次係数βbf1050および回転制御パラメータ1048を含み得るフィルタ構成データを生成する。一次係数βbf1050は、一次全域通過フィルタ1026を介して全域通過フィルタモジュール906に提供される。幾つかの実施形態では、回転制御パラメータθbf1048は、フィルタ特性θbf1036および1042と等価であり得るが、一方、他の実施形態では、このパラメータは、便宜上、拡大縮小され得る。例えば、幾つかの実施形態では、フィルタ特性は、意味のある中心点を有するパラメータ範囲(例えば、0ないし0.5など)に関連付けられ、回転制御パラメータは、フィルタ特性に対して拡大縮小されて、パラメータ範囲を、例えば、0ないし1に変更する。幾つかの実施形態では、フィルタ特性は、(例えば、中心点と比較して極点における分解能(resolution)の増加を維持するために)線形に拡大縮小されるが、他の実施形態では、非線形マッピングが(例えば、中心点に関する数値分解能(numerical resolution)を増加させるために)使用され得る。以下の式では、回転制御パラメータθbfは拡大縮小されていないものとして扱われるが、回転制御パラメータが拡大縮小される場合にも、同じ原理が適用し得ると理解される。回転制御パラメータθbf1048は、広帯域位相回転器1004を介して全域通過フィルタモジュール906に提供される。
【0091】
図10Bは、幾つかの実施形態による、広帯域位相回転器1004の実装例を詳細に説明する。広帯域位相回転器1004は、モノラル入力音声信号x(t)912および回転制御パラメータθbf1048の形式において情報を受信する。入力音声信号x(t)912は、最初に、ヒルベルト変換器モジュール1006によって処理されて、左脚成分1008および右脚成分1010を生成する。ヒルベルト変換器モジュール1006は、図7に示される構成を使用して実装され得るが、ヒルベルト変換器モジュール1006の他の実装が、他の実施形態において使用され得ると理解される。左脚成分1008および右脚成分1010は、2D直交回転モジュール1012に提供される。左脚成分1008は、右広帯域回転成分1022として広帯域位相回転器1004の出力にも提供される。広帯域位相回転器1004は、左脚信号および右脚信号を相互に対して回転するように構成されるため、幾つかの実施形態においてこれを達成する一つの方法は、左脚成分1008を右広帯域回転成分1022として一定に保持し、左脚成分および右脚成分を回転させて、左広帯域回転成分1020を形成することである。
【0092】
左脚成分1008および右脚成分1010に加えて、2D直交回転モジュール1012は、図10Aに示されるように、幾つかの実施形態に従って、フィルタ構成モジュール904から回転制御パラメータθbf1048も受信し得る。2D直交回転モジュール1012は、このデータを使用して、左回転成分1014および右回転成分1016を生成する。次いで、投影モジュール1018は、左回転成分1014および右回転成分1016を受信し、これらは、結合されて(例えば、加算されて)、左広帯域回転成分1020を形成する。図10Aに示されるように、広帯域位相回転器1004は、PSMモジュールの左出力チャネルy(t)として狭帯域回転成分1028を、PSMモジュールの右出力チャネルy(t)として右広帯域回転成分1022を生成する(これは、狭帯域位相回転器1024を迂回するか、または変更されずにそれを通過する)ために、左広帯域回転成分1020を狭帯域位相回転器1024に出力する。他の実施形態では、狭帯域回転成分1028および左脚成分1008(図10Aおよび図10Bに示される実施形態では、右広帯域回転成分1022として機能する)は、代わりに右出力チャネルy(t)および左出力チャネルy(t)へのマッピングをそれぞれ受ける。
【0093】
幾つかの実施形態では、PSMモジュール900は、以下の式(8)によって形式的に記述され得る。すなわち、
【0094】
【数10】
【0095】
幾つかの実施形態では、この単一入力複数出力の全域通過フィルタは、幾つかの部分から構成され、それぞれについては、順番に説明することになる。幾つかの実施形態によれば、これらの成分には、A、A、およびHが含まれ得る。
【0096】
幾つかの実施形態によれば、Aは、図10Aにおける狭帯域位相回転器1024に対応し得る。Aは、式(9)の形式を仮定する一つのチャネルの出力を有する一次全域通過フィルタである。
【0097】
【数11】
【0098】
ここで、βfは、-1ないし+1の範囲であるフィルタの係数である。フィルタの第二の出力は、単に入力を変更しないで通過し得る。そのため、幾つかの実施形態によれば、フィルタAの実装は、式(10)によって定義され得る。すなわち、
【0099】
【数12】
【0100】
の伝達関数は、一方の出力から他方の出力までの差分位相シフト(differential phase shift)
【0101】
【数13】
【0102】
として表される。この差分位相シフトは、式(11)によって定義されるものとして、中心周波数(radian frequency)ωの関数である。
【0103】
【数14】
【0104】
ここで、目標振幅応答は、応答がミッド(式(5))もしくはサイド(式(6))に配置されるべきかどうかに応じて、式(5)もしくは(6)の何れかにおけるθを
【0105】
【数15】
に置き換えることによって導出される。
【0106】
調整のための臨界点として、総利得αf=3dBが使用され得る周波数fは、以下の式によって定義される。すなわち、
【0107】
【数16】
【0108】
および
【0109】
【数17】
【0110】
目標振幅応答を0dBに正規化することにより、この臨界点は、パラメータfに対応し、これは、-3dBの点であり得る。式(8)において、Aの出力は、幾つかの実施形態に従って、使用される第一のチャネルの出力のみを確認するために添え字付けされている。
【0111】
式(8)において、Aは、単一入力複数出力の全域通過フィルタであり、これは、図10Aにおける広帯域位相回転器1004に対応し得る。Aは、式(14)におけるように形式的に定義され得る。
【0112】
【数18】
【0113】
ここで、H(x(t))は、フィルタの離散形式(discrete form)であり、一対の直交全域通過フィルタを使用して実装され、式(15)に従って連続時間プロトタイプ(continuous-time prototype)を使用して定義される。すなわち、
【0114】
【数19】
【0115】
幾つかの実施形態では、全域通過フィルタ
【0116】
【数20】
【0117】
は、二つの出力信号間における90度の位相関係、ならびに入力信号および両方の出力信号間における単一振幅関係(unity magnitude relationship)に制約を与えるが、入力(モノラル)信号と二つの(ステレオ)出力信号の何れかとの間における特定の位相関係を必ずしも保証するわけではない。
【0118】
【数21】
【0119】
の離散形式は
【0120】
【数22】
【0121】
と表記され、モノラル信号x(t)に対するその作用によって定義される。その結果は、式(16)によって定義されるように、二次元ベクトルになる。すなわち、
【0122】
【数23】
【0123】
離散単一入力複数出力の全域通過フィルタ
【0124】
【数24】
【0125】
は、幾つかの実施形態によれば、図10Bにおけるヒルベルト変換器モジュール1006に対応し、図7におけるヒルベルト変換器モジュール700にも対応し得る。式(14)において、θは、幾つかの実施形態に従って、Abの第二の出力に対する、第一の出力の回転角度を決定する。
【0126】
最後に、式(8)における完全なシステムに供給されるパラメータAbfは、幾つかの実施形態に従って、以下のように決定され得る。これらのパラメータには、図10Aにおける回転制御パラメータθbf1048および一次係数βbfに対応し得る、βbfおよびθbfを含み得る。幾つかの実施形態では、βbfは、中心角周波数(center radian frequency)ωから以下のように決定され得る。すなわち、
【0127】
【数25】
【0128】
ここで、ωは、式(12)を使用して所望の中心周波数fから計算され得る。図10Aにおいて、ωは、臨界点ω1044に対応し、fは、臨界点f1038に対応し、式(17)の動作は、フィルタ構成モジュール904内で部分的に実行され、その結果として一次係数βbfをもたらす。幾つかの実施形態では、二次項φ1046は、式(18)を介して、θbfおよびブールサウンドステージ位置パラメータΓから導出され得る。すなわち、
【0129】
【数26】
【0130】
この二次項φ1046は、図10Aにおける振幅応答モジュール902によってフィルタ構成モジュール904に提供される。
【0131】
幾つかの実施形態では、高レベルパラメータf、θbf、およびΓは、このシステムを直観的かつ便利に調整するのに十分であり得る。このような実施形態によれば、中心周波数fは、目標振幅応答が漸近的に-∞dBに近づく、Hz単位の変曲点を決定する。パラメータθbfにより、変曲点fに関するフィルタ特性に亘る制御を可能にする。0<θbf<1/4の場合、特性は低域通過であり、fcにおいてヌルとなり、目標振幅関数におけるスペクトル勾配は、θbfが増加するにつれて、有利な低周波数からフラットまで滑らかに補間する。1/4<θbf<1/2の場合、θbfが増加するにつれて、その特性は、fにおけるヌルを有するフラットから高域通過まで滑らかに補間する。θbf=1/4の点では、目標振幅関数は、純粋に帯域除去であり、fにおいてヌルになる。パラメータΓは、fおよびθbfによって決定される目標振幅関数をミッドチャネル(すなわち、L+R)もくしはサイドチャネル(すなわち、L-R)の何れかに配置するブール値である。フィルタネットワークへの両出力に対する全域制約に起因して、Γの作用は、相補的な目標振幅応答間において切り替えることである。
【0132】
幾つかの実施形態では、60度の垂直示唆に対する振幅応答を達成するために、上述されるFNORDフィルタネットワークは、パラメータf=11kHz、θbf=0.13、およびΓ=1を使用して構成され得る。図11は、幾つかの実施形態による、60度の垂直示唆に対する振幅応答を達成するように構成されるFNORDフィルタネットワークの出力周波数応答を示す、周波数応答グラフを例証している。図11は、ミッド成分1110およびサイド成分1120における出力周波数応答を例証しており、FNORDフィルタネットワークは、白色雑音によって駆動される。幾つかの実施形態では、フィルタパラメータf、θbf、および/もしくはΓは、所望の角度におけるHRTFベースの仰角示唆の分析に基づいて選択される。
【0133】
幾つかの実施形態では、PSMモジュール900は、全域通過フィルタに周波数領域仕様を使用する。例えば、場合によっては、より複雑な空間的示唆、例えば、身体計測データセット(anthropometric datasets)からサンプル抽出されたものが、必要とされることがある。特定の制限の範囲内で、上述の技術は、示唆の大きさ周波数領域表現に基づいて、音声ストリームの位相差分に任意の示唆を埋め込むために使用される。例えば、フィルタ構成モジュール904は、式(5)もしくは(6)の形式における式を使用して、ミッドもしくはサイドにおけるK個の狭帯域減衰係数(narrow-band attenuation coefficients)のベクトル化目標振幅応答から、K個の位相角
【0134】
【数27】
【0135】
のベクトル化伝達関数を決定し得る。すなわち、
【0136】
【数28】
【0137】
位相角ベクトルθは、式(19)によって定義される有限インパルス応答フィルタ(Finite Impulse Response filter)を生成する。すなわち、
【0138】
【数29】
【0139】
ここで、DFT-1は、逆離散フーリエ変換(inverse Discrete Fourier Transform)(idft)および
【0140】
【数30】
【0141】
を表す。次いで、2(K-1)個のIFRフィルタ係数Bn(θ)のベクトルは、式(20)によって定義されるように、x(t)に適用される。すなわち、
【0142】
【数31】
【0143】
ここでは、
【0144】
【数32】
【0145】
は、畳み込み演算(convolution operation)を表す。
【0146】
前の例から効果を再現し、60度の高度示唆(height cue)に対応する目標振幅応答を達成するには、観測されたHRIR
【0147】
【数33】
【0148】
がサンプル抽出され、長さ2(K-1)のDFTに適用されて、その結果として
【0149】
【数34】
【0150】
を生成し得て、これは、以下の演算を使用して、目標振幅応答ベクトル
【0151】
【数35】
【0152】
を決定するために使用され得る。すなわち、
【0153】
【数36】
【0154】
ここで、
【0155】
【数37】
【0156】
および
【0157】
【数38】
【0158】
は、それぞれ複素数の実数成分および虚数成分を返す演算であり、全ての演算は、ベクトル成分毎に適用される。ミッドまたはサイドの何れかに挿入されるこの目標振幅応答は、式(5)もしくは(6)のうちの一つに適用されて、K個の位相角のベクトル
【0159】
【数39】
【0160】
を決定し得て、ここからFIRフィルタBが導出され得る。次いで、このフィルタは、式(19)に挿入されて、単一入力複数出力の全域通過フィルタを導出する。
【0161】
式(19)および(20)は、目標振幅応答を制約するための効果的な手段を提供するが、その実装は、多くの場合、逆DFT演算(inverse DFT operation)の結果として得られる、比較的高次のFRフィルタに依存することになる。これは、リソースに制約のあるシステムには適さない可能性がある。このような場合、式(8)に関連して説明されるように、低次の無限インパルス応答(infinite impulse response)(IIR)実装が使用され得る。
【0162】
全域通過フィルタモジュール906は、フィルタ構成モジュール904によって構成されるものとして、全域通過フィルタをモノラルチャネルx(t)に適用して、出力チャネルy(t)およびy(t)を生成する。チャネルx(t)への全域通過フィルタの適用は、式(8)、(20)によって定義されるように、または図9もしくは図10Aに描写されるように実行され得る。全域通過フィルタモジュール906は、チャネルy(t)をスピーカー910aに、チャネルy(t)をスピーカー910bにというように、各出力チャネルをそれぞれのスピーカーに提供する。図9には示されていないが、出力チャネルy(t)およびy(t)は、一つもしくは複数の介在コンポーネント(intervening components)(例えば、図1に示されるように、成分処理器モジュール106、クロストーク処理器モジュール110、ならびに/またはL/R-M/S変換器モジュール104およびM/S-L/R変換器モジュール108など)を介して、スピーカー910aおよび910bに提供され得ると理解される。
【0163】
[ハイパーミッド処理]
幾つかの実施形態では、PSM処理は、音声信号のミッド成分、または音声信号のハイパーミッド成分などの、受信された音声信号の目標部分に対して実行され得る。図12は、一つもしくは複数の実施形態による、音声処理システム1200を示すブロック図である。システム1200は、ハイパーミッド成分を生成して、音声信号の目標部分(例えば、発声など)を分離し、ハイパーミッド成分に対してPSM処理を実行して、目標部分を空間的にシフトさせる。システム1200に関する幾つかの実施形態は、本明細書に説明されるものとは異なるコンポーネントを有する。同様に、場合によっては、本明細書に説明されるものとは異なる方式において、コンポーネント間に機能を分散することができる。
【0164】
システム1200は、L/R-M/S変換器モジュール1206、直交成分生成器モジュール1212、PSMモジュール102を含む直交成分処理器モジュール1214、およびクロストーク処理器モジュール1224を含む。
【0165】
L/R-M/S変換器モジュール1206は、左チャネル1202および右チャネル1204を受信し、チャネル1202および1204からミッド成分1208およびサイド成分1210を生成する。L/R-M/S変換器モジュール104に関する説明は、L/R-M/S変換器モジュール1206に適用可能であり得る。
【0166】
直交成分生成器モジュール1212は、ミッド成分1208およびサイド成分1210を処理して、ハイパーミッド成分M1、ハイパーサイド成分S1、残留ミッド成分M2、および残留サイド成分S2のうちの少なくとも一つを生成する。ハイパーミッド成分M1は、サイド成分1210のスペクトルエネルギーが除去されたスペクトルエネルギーミッド成分1208のスペクトルエネルギーである。ハイパーサイド成分S1は、サイド成分1210のスペクトルエネルギーが除去されたミッド成分1208のスペクトルエネルギーである。残留ミッド成分M2は、ミッド成分1208のスペクトルエネルギーが除去されたハイパーミッド成分M1のスペクトルエネルギーである。ミッド成分M2は、ミッド成分1208のスペクトルエネルギーが除去されたハイパーミッド成分M1のスペクトルエネルギーである。残留サイド成分S2は、ハイパーサイド成分S1のスペクトルエネルギーが除去されたハイパーミッド成分1210のスペクトルエネルギーである。システム1200は、ハイパーミッド成分M1、ハイパーサイド成分S1、残留ミッド成分M2、および残留サイド成分S2のうちの少なくとも一つを処理することによって、左チャネル1242および右出力チャネル1244を生成する。直交成分生成器モジュール1212については、図13A、13B、および13Cを参照して、さらに説明する。
【0167】
直交成分処理器モジュール1214は、ハイパーミッド成分M1、ハイパーサイド成分S1、残留ミッド成分M2、および/もしくは残留サイド成分S2のうちの一つもしくは複数を処理し、処理済みの成分を処理済みの左成分1220および処理済みの右成分1222に変換する。成分処理器モジュール106に関する説明は、処理が、ミッド成分およびサイド成分ではなく、ハイパーミッド成分M1、ハイパーサイド成分S1、残留ミッド成分M2、および/もしくは残留サイドに対して実行されることを除いて、直交成分処理器モジュール1214に適用可能であり得る。例えば、成分M1、M2、S1、およびS2に対する処理には、空間的示唆の処理(例えば、振幅もしくは遅延ベースのパンニング、バイノーラル処理等)、単一帯域もしくは複数帯域のイコライゼーション、単一帯域または複数帯域のダイナミクス処理(例えば、圧縮、拡張、制限等)、単一帯域もしくは複数帯域の利得段階もしくは遅延段階、音声効果の追加、または他種類の処理などの、各種種類を含み得る。幾つかの実施形態では、直交成分処理器モジュール1214は、ハイパーミッド成分M1、ハイパーサイド成分S1、残留ミッド成分M2、および/もしくは残留サイド成分S2を使用して、サブバンド空間処理および/もしくはクロストーク補償処理を実行する。直交成分処理器モジュール1214は、成分M1、S2、S1、およびS2を処理済みの左成分1220および処理済みの右成分1222に変換するためのL/R-M/S変換器をさらに含み得る。
【0168】
直交成分処理器モジュール1214は、ハイパーミッド成分M1、ハイパーサイド成分S1、残留ミッド成分M2、および/もしくは残留サイド成分S2のうちの一つもしくは複数に対して動作し得る、PSMモジュール102をさらに含む。例えば、PSMモジュール102は、ハイパーミッド成分M1を入力として受信し、空間的にシフトされる左右のチャネルを生成し得る。ハイパーミッド成分M1は、例えば、発声を表す音声信号の孤立した部分を含み得るため、HPSM処理のために選択され得る。PSMモジュール102によって生成される左チャネルは、処理済みの左成分1020を生成するために使用され、PSMモジュール102によって生成される右チャネルは、処理済みの右成分1222を生成するために使用される。直交成分処理器モジュール1214については、図12を参照して、さらに説明する。
【0169】
クロストーク処理器モジュール1224は、処理済みの左成分1220および処理済みの右成分1222を受信し、これらにクロストーク処理を実行する。クロストーク処理器モジュール1224は、左チャネル1242および右チャネル1244を出力する。クロストーク処理器モジュール1224に関する説明は、クロストーク処理器モジュール1224に適用可能であり得る。幾つかの実施形態では、クロストーク処理(例えば、シミュレーションもしくはキャンセルなど)は、ミッド成分およびサイド成分への左チャネル1202および右チャネル1204の変換の前などの、直交成分処理の前に実行され得る。左チャネル1242は、左スピーカー112に提供され得て、右チャネル1244は、右スピーカー114に提供され得る。
【0170】
[直交成分生成器の例]
図13Aないし13Cは、一つもしくは複数の実施形態による、直交成分生成器モジュール1313、1323、および1343をそれぞれ示すブロック図である。直交成分生成器モジュール1313、1323、および1343は、直交成分生成器モジュール1212の一例である。モジュール1313、1323、および1343に関する幾つかの実施形態は、本明細書に説明されるものとは異なるコンポーネントを有する。同様に、場合によっては、本明細書に説明されるものとは異なる方式において、コンポーネント間に機能を分散することができる。
【0171】
図13Aを参照すると、直交成分生成器モジュール1313は、減算ユニット1305、減算ユニット1309、減算ユニット1315、および減算ユニット1319を含む。上述されるように、直交成分生成器モジュール1313は、ミッド成分1208およびサイド成分1210を受信し、ハイパーミッド成分M1、ハイパーサイド成分S1、残留ミッド成分M2、および残留サイド成分S2のうちの一つもしくは複数を出力する。
【0172】
減算ユニット1305は、ミッド成分1208のスペクトルエネルギーからサイド成分1210のスペクトルエネルギーを除去して、ハイパーミッド成分M1を生成する。例えば、減算ユニット1305は、周波数領域におけるミッド成分1208の振幅から、位相だけを残しつつ、周波数領域におけるサイド成分1210の振幅を減算して、ハイパーミッド成分M1を生成する。周波数領域における減算は、周波数領域において信号を生成するために時間領域信号に対するフーリエ変換と、次いで、周波数領域においてその信号を減算することとを使用して、実行され得る。他の例では、周波数領域における減算は、フーリエ変換の代わりにウェーブレット変換(wavelet transform)の使用などの、他の方法において実行することもできる。減算ユニット1309は、ミッド成分1208のスペクトルエネルギーからハイパーミッド成分M1のスペクトルエネルギーを除去することにより、残留ミッド成分M2を生成する。例えば、減算ユニット1309は、周波数領域におけるミッド成分1208振幅から、位相だけを残しつつ、周波数領域におけるハイパーミッド成分M1の振幅を減算して、残留ミッド成分M2を生成する。時間領域におけるミッドからサイドを減算することは、元の信号の右チャネルをもたらすことに対し、周波数領域における上記の操作は、ミッド成分のスペクトルエネルギーとは異なるミッド成分のスペクトルエネルギーの部分(M1もしくはハイパーミッドと呼ばれる)と、サイド成分のスペクトルエネルギーと同じになるサイド成分のスペクトルエネルギーの部分(M2もしくは残留ミッドと呼ばれる)とを分離して区別する。
【0173】
幾つかの実施形態では、ミッド成分1006のスペクトルエネルギーからサイド成分1210のスペクトルエネルギーを減算する結果が、ハイパーミッド成分M1に対して負の値をもたらす場合(例えば、周波数領域における一つもしくは複数のビンについて)、追加の処理が使用され得る。幾つかの実施形態では、ミッド成分1208のスペクトルエネルギーからサイド成分1210のスペクトルエネルギーを減算する結果が負の値になる場合、ハイパーミッド成分M1は、0値に固定される。幾つかの実施形態では、ハイパーミッド成分M1は、負の値の絶対値をハイパーミッド成分M1の値として取り込むことによって、最低値へ戻される。ミッド成分1208のスペクトルエネルギーからサイド成分1210のスペクトルエネルギーを減算する結果が、M1に対して負の値にもたらす場合、他種類の処理が使用され得る。ハイパーサイド成分S1、残留サイド成分S2、もしくは残留ミッド成分M2を生成する減算の結果が、0における固定、最低値への戻り(wrap around)、もしくは他の処理などの、負になる場合、同様の追加処理が使用され得る。ハイパーミッド成分M1を0に固定することは、減算の結果が負の値になる場合に、M1および両サイド成分の間にスペクトル直交性(spectral orthogonality)を提供することになる。同様に、ハイパーサイド成分S1を0に固定することは、減算の結果が負の値になる場合、S1および両ミッド成分の間にスペクトル直交性を提供することになる。ハイパーミッド成分およびサイド成分、ならびにそれらに対応する適切なミッド成分/サイド成分(すなわち、ハイパーミッドに対するサイド成分、ハイパーサイドに対するミッド成分など)の間に直交性を作成することにより、導入される残留ミッド成分M2成分および残留サイド成分S2には、それらに対応する適切なミッド成分/サイド成分に直交しない(すなわち、それらと共通する)スペクトルエネルギーが含まれる。すなわち、ハイパーミッドに対して0の固定を適用し、そのM1成分を使用して残留ミッドを導出する場合、サイド成分と共通するスペクトルエネルギーを有しないハイパーミッド成分と、サイド成分と完全に共通するスペクトルエネルギーを有する残留ミッド成分とが生成される。ハイパーサイドを0に固定する場合、同じ関係がハイパーサイドおよび残留サイドに適用される。周波数領域処理を適用する場合、典型的には、周波数情報および時間情報の間の分解能におけるトレードオフが存在する。周波数分解能が増加すると(すなわち、FFTウィンドウサイズおよび周波数ビン(frequency bins)の数が増加すると)、時間分解能(time resolution)は減少し、その逆も同様である。上述のスペクトル減算は、周波数ビン単位で生じるため、ハイパーミッド成分から発声エネルギーを除去する場合などの特定の状況では、大きなFFTウィンドウサイズ(例えば、8192個のサンプル、実数値の入力信号が与えられると、4096個の周波数ビンをもたらす)を有することがより好適となることがある。他の状況では、より高い時間分解能が必要とされ得るため、全体的に低いレイテンシ(latency)および低い周波数分解能(例えば、512個のサンプルFFTウィンドウサイズ、実数値入力信号が与えられると、256個の周波数ビンになる)が必要とされる。後者の場合、ミッドおよびサイドの低周波数分解能は、ハイパーミッド成分M1およびハイパーサイド成分S1を導出するために相互に減算される場合、各周波数ビンのスペクトルエネルギーが広過ぎる周波数範囲に亘るエネルギーの平均的な表現であるため、可聴スペクトルのアーティファクト(audible spectral artifacts)を生成する可能性がある。この場合、ハイパーミッドM1もしくはハイパーサイドS1を導出する際に、ミッドおよびサイドの間の差分の絶対値を取得することは、周波数ビン毎に成分における真の直交性からの乖離を許容することによって、知覚的アーティファクトを軽減するのに貢献することができる。0を折り返すことに加えて、もしくは0を折り返す代わりに、減数値(subtrahend value)に係数を適用して、その値を0および1の間に拡大縮小し得るため、一方の極端(すなわち、値が1である場合)では、ハイパーおよび残留のミッド成分/サイド成分の完全な直交性と、他方の極端(すなわち、値が0の場合)では、それらの対応する元のミッド成分およびサイド成分と同一のハイパーミッドM1およびハイパーサイドS1との間を補間するための方法を提供し得る。
【0174】
減算ユニット1315は、周波数領域におけるサイド成分1210のスペクトルエネルギーから、位相だけを残しつつ、周波数領域におけるミッド成分1208のスペクトルエネルギーを除去して、ハイパーサイド成分S1を生成する。例えば、減算ユニット1315は、周波数領域におけるサイド成分1210の振幅から、位相だけを残しつつ、周波数領域におけるミッド成分1208の振幅を減算して、ハイパーサイド成分S1を生成する。減算ユニット1319は、サイド成分1210のスペクトルエネルギーからハイパーサイド成分S1のスペクトルエネルギーを除去して、残留サイド成分S2を生成する。例えば、減算ユニット1319は、周波数領域におけるサイド成分1210の振幅から、位相を残しつつ、周波数領域におけるハイパーサイド成分S1の振幅を減算して、残留サイド成分S2を生成する。
【0175】
図5Bにおいて、直交成分生成器モジュール1323が、ミッド成分1006およびサイド成分1210を受信し、ハイパーミッド成分M1、残留ミッド成分M2、ハイパーサイド成分S1、および残留サイド成分S2を生成するという点において、直交成分生成器モジュール1323は、直交成分生成器モジュール1313と同様である。直交成分生成器モジュール1323は、周波数領域においてハイパーミッド成分M1およびハイパーサイド成分S1を生成し、次いで、これらの成分を時間領域に変換して戻して、残留ミッド成分M2および残留サイド成分S2を生成することによって、直交生成器モジュール1313とは異なる。直交成分生成器モジュール1323は、順方向FFTユニット1320、帯域通過ユニット1322、減算ユニット1324、ハイパーミッド処理器1325、逆FFTユニット1326、時間遅延ユニット1328、減算ユニット1330、順方向FFTユニット1332、帯域通過ユニット1334、減算ユニット1336、ハイパーサイド処理器1337、逆FFTユニット1340、時間遅延ユニット1342、および減算ユニット1344を含む。
【0176】
順方向高速フーリエ変換(forward fast Fourier transform)(FFT)ユニット1320は、順方向FFTをミッド成分1208に適用し、ミッド成分1208を周波数領域に変換する。周波数領域に変換されたミッド成分1208は、振幅および位相を含む。帯域通過ユニット1322は、周波数領域ミッド成分1208に帯域通過フィルタを適用し、帯域通過フィルタは、ハイパーミッド成分M1における周波数を指定する。例えば、典型的な人間の発声範囲を分離するには、帯域通過フィルタは、300Hzないし8000Hzの間の周波数を指定し得る。別の例では、典型的な人間の発声範囲に関連付けられる音声コンテンツを除去するには、帯域通過フィルタは、ハイパーミッド成分M1において(例えば、ベースギターもしくはドラムによって生成される)低周波数、および(例えば、シンバルによって生成される)高周波数を維持し得る。他の実施形態では、直交成分生成器モジュール1323は、帯域通過ユニット1322によって適用される帯域通過フィルタに加えて、および/もしくは帯域通過フィルタの代わりに、種々の他のフィルタを周波数領域ミッド成分1208に適用する。幾つかの実施形態では、直交成分生成器モジュール1323は、帯域通過ユニット1322を含まず、周波数領域ミッド成分1208に如何なるフィルタも適用しない。周波数領域では、減算ユニット1324は、フィルタ抽出されるミッド成分からサイド成分1210を減算して、ハイパーミッド成分M1を生成する。他の実施形態では、直交成分処理器モジュール(例えば、図12における直交成分処理器モジュールなど)によって実行されるような、ハイパーミッド成分M1に適用される後の処理に加えて、および/もしくはその代わりに、直交成分生成器モジュール1323は、周波数領域ハイパーミッド成分M1に種々の音声強化(audio enhancements)を適用する。ハイパーミッド処理器1325は、時間領域に変換する前に、周波数領域においてハイパーミッド成分M1に対する処理を実行する。この処理には、サブバンド空間処理および/もしくはクロストーク補償処理が含まれ得る。幾つかの実施形態では、ハイパーミッド処理器1325は、直交成分処理器モジュール1214によって実行され得る処理の代わりに、および/もしくはそれに加えて、ハイパーミッド成分M1に対する処理を実行する。逆FFTユニット1326は、ハイパーミッド成分M1に逆FFTを適用し、ハイパーミッド成分M1を時間領域に変換して戻す。周波数領域におけるハイパーミッド成分M1は、M1の振幅とミッド成分1208の位相とを含み、逆FFTユニット1326は、これらを時間領域に変換する。時間遅延ユニット1328は、ミッド成分1208およびハイパーミッド成分M1が減算ユニット1330に同時に到着するように、ミッド成分1208に時間遅延を適用する。減算ユニット1330は、時間領域における時間遅延ミッド成分1208から時間領域におけるハイパーミッド成分M1を減算し、残留ミッド成分M2を生成する。この例では、ハイパーミッド成分M1のスペクトルエネルギーは、時間領域における処理を使用して、ミッド成分1208のスペクトルエネルギーから除去される。
【0177】
順方向FFTユニット1332は、サイド成分1210に順方向FFTを適用し、サイド成分1210を周波数領域に変換する。周波数領域に変換されたサイド成分1210は、振幅および位相を含む。帯域通過ユニット1334は、周波数領域サイド成分1210に帯域通過フィルタを適用する。帯域通過フィルタは、ハイパーサイド成分S1における周波数を指定する。他の実施形態では、直交成分生成器モジュール1323は、帯域通過フィルタに加えて、および/もしくは帯域通過フィルタの代わりに、種々の他のフィルタを周波数領域サイド成分1210に適用する。周波数領域では、減算ユニット1336は、フィルタ抽出されるサイド成分1210からミッド成分1208を減算して、ハイパーサイド成分S1を生成する。他の実施形態では、直交成分処理器(例えば、直交成分処理器モジュール1214など)によって実行されるような、ハイパーサイド成分S1に適用される後の処理に加えて、および/もしくはその代わりに、直交成分生成器モジュール1323は、種々の音声強化を周波数領域ハイパーサイド成分S1に適用する。ハイパーサイド処理器1337は、時間領域へのその変換に先立って、周波数領域におけるハイパーサイド成分S1に対する処理を実行する。この処理には、サブバンド空間処理および/もしくはクロストーク補償処理が含まれ得る。幾つかの実施形態では、ハイパーサイド処理器1337は、直交成分処理器モジュール1214によって実行され得る処理の代わりに、および/もしくはそれに加えて、ハイパーサイド成分S1に対する処理を実行する。逆FFTユニット1340は、周波数領域におけるハイパーサイド成分S1に逆FFTを適用し、時間領域におけるハイパーサイド成分S1を生成する。周波数領域におけるハイパーサイド成分S1は、サイド成分1210の振幅S1および位相を含み、逆FFTユニット1326は、サイド成分1210を時間領域に変換する。時間遅延ユニット1342は、サイド成分1210がハイパーサイド成分S1と同時に減算ユニット1344に到着するように、サイド成分1210を時間遅延させる。続いて、減算ユニット1344は、時間領域における時間遅延サイド成分1210から時間領域におけるハイパーサイド成分S1を減算し、残留サイド成分S2を生成する。この例では、時間領域における処理を使用して、ハイパーサイド成分S1のスペクトルエネルギーは、サイド成分1210のスペクトルエネルギーから除去される。
【0178】
幾つかの実施形態では、ハイパーミッド処理器1325およびハイパーサイド処理器1337は、これらのコンポーネントによって実行される処理が直交成分処理器モジュール1214によって実行される場合、省略され得る。
【0179】
図13Cにおいて、直交成分生成器モジュール1343が、周波数領域において成分M1、M2、S1、およびS2を生成し、次いで、これらの成分を時間領域に変換するという点を除いて、直交成分生成器モジュール1343が、ミッド成分1208およびサイド成分1210を受信し、ハイパーミッド成分M1、残留ミッド成分M2、ハイパーサイド成分S1、および残留サイド成分S2を生成するという点において、直交成分生成器モジュール1343は、直交成分生成器モジュール1323と類似している。直交成分生成器モジュール1343は、順方向FFTユニット1347、帯域通過ユニット1349、減算ユニット1351、ハイパーミッド処理器1352、減算ユニット1353、残留ミッド処理器1354、逆FFTユニット1355、逆FFTユニット1355、逆FFTユニット1357、順方向FFTユニット1361、帯域通過ユニット1363、減算ユニット1365、ハイパーサイド処理器1366、減算ユニット1367、残留サイド処理器1368、逆FFTユニット1369、および逆FFTユニット1371を含む。
【0180】
順方向FFTユニット1347は、順方向FFTをミッド成分1208に適用し、ミッド成分1208を周波数領域に変換する。周波数領域に変換されたミッド成分1208は、振幅および位相を含む。順方向FFTユニット1361は、サイド成分1210に順方向FFTを適用し、サイド成分1210を周波数領域に変換する。周波数領域に変換されたサイド成分1210は、振幅および位相を含む。帯域通過ユニット1349は、周波数領域ミッド成分1208に帯域通過フィルタを適用し、帯域通過フィルタは、ハイパーミッド成分M1の周波数を指定する。幾つかの実施形態では、直交成分生成器モジュール1343は、帯域通過フィルタに加えて、および/もしくは帯域通過フィルタの代わりに、種々の他のフィルタを周波数領域ミッド成分1208に適用する。減算ユニット1351は、周波数領域ミッド成分1208から周波数領域サイド成分1210を減算し、周波数領域におけるハイパーミッド成分M1を生成する。ハイパーミッド処理器1352は、ハイパーミッド成分M1を時間領域に変換する前に、周波数領域におけるハイパーミッド成分M1の処理を実行する。幾つかの実施形態では、ハイパーミッド処理器1352は、サブバンド空間処理および/もしくはクロストーク補償処理を実行する。幾つかの実施形態では、ハイパーミッド処理器1352は、直交成分処理器モジュール1214によって実行され得る処理の代わりに、および/もしくはそれに加えて、ハイパーミッド成分M1に対する処理を実行する。逆FFTユニット1357は、ハイパーミッド成分M1に逆FFTを適用し、それを時間領域に変換して戻す。周波数領域におけるハイパーミッド成分M1は、ミッド成分1208の振幅M1および位相を含み、逆FFTユニット1357は、これを時間領域に変換する。減算ユニット1353は、周波数領域においてミッド成分1208からハイパーミッド成分M1を減算し、残留ミッド成分M2を生成する。残留ミッド処理器1354は、残留ミッド成分M2を時間領域に変換する前に、周波数領域における残留ミッド成分M2に対する処理を実行する。幾つかの実施形態では、残留ミッド処理器1354は、残留ミッド成分M2に対してサブバンド空間処理および/もしくはクロストーク補償処理を実行する。幾つかの実施形態では、残留ミッド処理器1354は、直交成分処理器モジュール1214によって実行され得る処理の代わりに、および/もしくは直交成分処理器モジュール1214によって実行され得る処理に加えて、残留ミッド成分M2に対する処理を実行する。逆FFTユニット1355は、逆FFTを適用して、残留ミッド成分M2を時間領域に変換する。周波数領域における残留ミッド成分M2は、ミッド成分1208の振幅M2および位相を含み、逆FFTユニット1355がこれを時間領域に変換する。
【0181】
帯域通過ユニット1363は、周波数領域サイド成分1210に帯域通過フィルタを適用する。帯域通過フィルタは、ハイパーサイド成分S1における周波数を指定する。他の実施形態では、直交成分生成器モジュール1343は、帯域通過フィルタに加えて、および/もしくは帯域通過フィルタの代わりに、種々の他のフィルタを周波数領域サイド成分1210に適用する。周波数領域では、減算ユニット1365は、フィルタ抽出されたサイド成分1210からミッド成分1208を減算して、ハイパーサイド成分S1を生成する。ハイパーサイド処理器1366は、時間領域への変換に先立って、周波数領域におけるハイパーサイド成分S1に対する処理を実行する。幾つかの実施形態では、ハイパーサイド処理器1366は、ハイパーサイド成分S1に対してサブバンド空間処理および/もしくはクロストーク補償処理を実行する。幾つかの実施形態では、ハイパーサイド処理器1366は、直交成分処理器モジュール1214によって実行され得る処理の代わりに、および/もしくはそれに加えて、ハイパーサイド成分S1に対する処理を実行する。逆FFTユニット1371は、逆FFTを適用して、ハイパーサイド成分S1を時間領域に変換して戻す。周波数領域におけるハイパーサイド成分S1は、サイド成分1210の振幅S1および位相を含み、逆FFTユニット1371は、これを時間領域に変換する。減算ユニット1367は、周波数領域において、サイド成分1210からハイパーサイド成分S1を減算し、残留サイド成分S2を生成する。残留サイド処理器1368は、時間領域への変換に先立って、周波数領域における残留サイド成分S2の処理を実行する。幾つかの実施形態では、残留サイド処理器1368は、残留サイド成分S2に対してサブバンド空間処理および/もしくはクロストーク補償処理を実行する。幾つかの実施形態では、残留サイド処理器1368は、直交成分処理器モジュール1214によって実行され得る処理の代わりに、および/もしくは直交成分処理器モジュール1214によって実行され得る処理に加えて、残留サイド成分S2に対する処理を実行する。逆FFTユニット1369は、残留サイド成分S2に逆FFTを適用し、これを時間領域に変換する。周波数領域における残留サイド成分S2には、サイド成分1210の振幅S2および位相が含まれ、逆FFTユニット1369は、これを時間領域に変換する。
【0182】
幾つかの実施形態では、ハイパーミッド処理器1352、ハイパーサイド処理器1366、残留ミッド処理器1354、または残留サイド処理器1368は、これらのコンポーネントによって実行される処理が直交成分処理器モジュール1214によって実行される場合、省略され得る。
【0183】
[直交成分処理器の例]
図14Aは、一つもしくは複数の実施形態による、直交成分処理器モジュール1417を示すブロック図である。直交成分処理器モジュール1417は、直交成分処理器モジュール1412の一例である。モジュール1417に関する幾つかの実施形態は、本明細書に説明されるものとは異なるコンポーネントを有する。同様に、場合によっては、本明細書に説明されるものとは異なる方式において、コンポーネント間に機能を分散することができる。
【0184】
直交成分処理器モジュール1417は、成分処理器モジュール1420、PSMモジュール102、加算ユニット1422、M/S-L/R変換器モジュール1424、加算ユニット1426、および加算1428を含む。
【0185】
成分処理器モジュール1420は、ミッド成分およびサイド成分ではなく、ハイパーミッド成分M1、ハイパーサイド成分S1、残留ミッド成分M2、および/もしくは残留サイド成分S2を使用することを除いて、成分処理器モジュール106と同様の処理を実行する。例えば、成分処理器モジュール1420は、ハイパーミッド成分M1、残留ミッド成分M2、ハイパーサイド成分S1、および残留サイド成分S2のうちの少なくとも一つに対してサブバンド空間処理および/もしくはクロストーク補償処理を実行する。成分処理器モジュール1420によるサブバンド空間処理および/もしくはクロストーク補償の結果として、直交成分処理器モジュール1417は、処理済みのM1、処理済みのM2、処理済みのS1、および処理済みのS2のうちの少なくとも一つを出力する。幾つかの実施形態では、成分M1、M2、S1、もしくはS2のうちの一つもしくは複数は、成分処理器モジュール1420の迂回を行い得る。
【0186】
幾つかの実施形態では、直交成分処理器モジュール1417は、周波数領域におけるハイパーミッド成分M1、残留ミッド成分M2、ハイパーサイド成分S1、および残留サイド成分S2のうちの少なくとも一つに対してサブバンド空間処理および/もしくはクロストーク補償処理を実行する。直交成分生成器モジュール410は、逆FFTを実行することなく、周波数領域における成分M1、M2、S1、もしくはS2を直交成分処理器モジュール1417に提供し得る。処理済みのM1、処理済みのM2、および処理済みのサイド成分1442を生成した後、直交成分処理器モジュール1417は、逆FFTを実行して、これらの成分を時間領域に変換して戻し得る。幾つかの実施形態では、直交成分処理器モジュール1417は、処理済みのM1、処理済みのM2、処理済みのS1、および処理済みのS1に対して逆FFTを実行し、時間領域における処理済みのサイド成分1446を生成する。
【0187】
直交成分処理器モジュール1417のコンポーネント例を図15および16に示す。幾つかの実施形態では、直交成分処理器モジュール1417は、サブバンド空間処理およびクロストーク補償処理の両方を実行する。直交成分処理器モジュール1417によって実行される処理は、サブバンド空間処理もしくはクロストーク補償処理に限定されない。ミッド空間/サイド空間を使用する任意種類の空間処理は、ミッド成分の代わりにハイパーミッド成分を使用すること、またはサイド成分の代わりにハイパーサイド成分を使用することによるように、直交成分処理器モジュール1417によって実行され得る。他種類の処理には、利得の適用、振幅もしくは遅延ベースのパンニング、バイノーラル処理、残響処理(reverberation)、圧縮および制限などのダイナミックレンジ処理(dynamic range processing)、ならびにコーラス(chorus)もしくはフランジング(flanging)から発声スタイルもしくは楽器スタイルの転送、変換、または再合成(resynthesis)等に対する機械学習ベースのアプローチまで及ぶ、他の線形もしくは非線形の音声処理技術および効果が含まれることがある。
【0188】
PSMモジュール102は、処理済みのM1を受信し、PSM処理を適用して、処理済みのM1を空間的にシフトし、その結果として左チャネル1432および右チャネル1434をもたらす。PSMモジュール102は、ハイパーミッド成分M1に適用されるものとして示されているが、PSMモジュールは、成分M1、M2、S1、もしくはS2のうちの一つもしくは複数に適用され得る。幾つかの実施形態では、PSMモジュール102によって処理される成分は、成分処理器モジュール1420による処理の迂回を行う。例えば、PSMモジュール102は、処理済みのM1ではなく、ハイパーミッド成分M1を処理し得る。
【0189】
加算ユニット1422は、処理済みのS1を処理済みのS2に加算して、処理済みのサイド成分1442を生成する。M/S-L/R変換器モジュール1424は、処理済みのM2および処理済みのサイド成分1442を使用して、処理済みの左成分1444および処理済みの右成分1446を生成する。幾つかの実施形態では、処理済みの左サイド成分1444は、処理済みのM2および処理済みのサイド成分1442の加算に基づいて生成され、処理済みの右成分1446は、処理済みのM2および処理済みのサイド成分1442の差分に基づいて生成される。他のM/S-L/R型の変換は、処理済みの左成分1444および処理済みの右成分1446を生成するために使用され得る。
【0190】
加算ユニット1426は、PSMモジュール102からの左チャネル1432を処理済みの左成分1444に加算して、左チャネル1452を生成する。加算ユニット1428は、PSMモジュール102からの右チャネル1434を、処理済みの右成分1446に加算して、右チャネル1454を生成する。より一般的には、PSMモジュール102からの一つもしくは複数の左チャネルは、M/S-L/R変換器モジュール1424からの(例えば、PSMモジュール102によって処理されない、ハイパー成分/残留成分を使用して生成される)左成分に加算されて、左チャネル1452を生成し、PSMモジュール102からの一つもしくは複数の右チャネルは、M/S-L/R変換器モジュール1424からの(例えば、PSMモジュール102によって処理されない、ハイパー成分/残留成分を使用して生成される)右成分に加算されて、右チャネル1454を生成し得る。
【0191】
そのため、直交成分処理器モジュール1417は、L/R-M/S変換器モジュール1206および直交成分生成器モジュール1212によって分離されるように、音声信号のハイパーミッド成分M1にPSM処理を適用する。次いで、(左チャネル1432および右チャネル1434を含む)PSM強化ステレオ信号は、残留左信号/残留右信号(例えば、ハイパーミッド成分なしで生成される、処理済みの左成分1444および処理済みの右成分1446など)に加算することができる。機械学習ベースの音源分離を含む、この例に加えて、またはこの例の代わりに、PSM処理に使用される入力信号の成分を分離するための他のアプローチが使用され得る。
【0192】
幾つかの実施形態では、直交成分処理器モジュール1417は、ハイパーミッド成分MLの代わりに、音声信号のミッド成分MにPSM処理を適用する。図14Bは、一つもしくは複数の実施形態による、直交成分処理器モジュール1419を示すブロック図を例証している。幾つかの実施形態では、図14Bにおける直交成分処理器モジュール1419は、直交成分生成器モジュール1212がないが、図12に示されるシステム1200と同様の音声処理システムの一部として実装され得て、これにより、直交成分処理器モジュール1419が、ハイパーミッド成分、ハイパーサイド成分、残留ミッド成分、および残留サイド成分の代わりに、ミッド成分およびサイド成分信号(例えば、ミッド成分1208およびサイド成分1210など)を受信する。幾つかの実施形態では、直交成分処理器モジュール1410は、成分処理器モジュール106と同様の成分処理器モジュールを含んで、(図示されない)受信されたミッド成分およびサイド成分から処理済みのミッド成分および処理済みのサイド成分を生成する。PSMモジュール102は、ミッド成分M(もしくは処理済みのミッド)を受信し、PSM処理を適用して受信されたミッド信号を空間的にシフトして、ミッド信号におけるPSM処理済みの左チャネル1432およびPSM処理済みの右チャネル1434を生成し、これらは、M/S-L/R変換器モジュール1424によってサイド成分S(または処理済みのサイド)と結合されて、左チャネル1452および右チャネル1454を生成する。例えば、図14Bに示されるように、M/S-L/R変換器モジュール1424は、加算ユニット1460を使用して、PSM処理済みの左チャネル1432およびサイド成分Sの加算として左チャネル1452を生成し、減算ユニット1462を使用して、PSM処理済みの右チャネル1434およびサイド成分Sの加算として右チャネル1452を生成する。換言すれば、M/S-L/R変換器モジュール1424は、左チャネルに対する信号と右チャネルに対する信号反転とを組み合わせることにより、(左右の基準において、右成分の逆となる、左成分によって規定される部分空間に存在する)サイド信号を左右空間におけるPSM処理済みのステレオ信号に混合するサービスを行う。
【0193】
[サブバンド空間処理器の例]
図15は、一つもしくは複数の実施形態による、サブバンド空間処理器モジュール1510を示すブロック図である。サブバンド空間処理器モジュール1510は、成分処理器モジュール106もしくは1520の成分の一例である。サブバンド空間処理器モジュール1510は、ミッドEQフィルタ1504(1)、ミッドEQフィルタ1504(2)、ミッドEQフィルタ1504(3)、ミッドEQフィルタ1504(4)、サイドEQフィルタ1506(1)、サイドEQフィルタ1506(2)、サイドEQフィルタ1506(3)、およびサイドEQフィルタ1506(4)を含む。サブバンド空間処理器モジュール1510に関する幾つかの実施形態は、本明細書に説明されるものとは異なるコンポーネントを有する。同様に、場合によっては、本明細書に説明されるものとは異なる方式において、コンポーネント間に機能を分散することができる。
【0194】
サブバンド空間処理器モジュール1510は、非空間成分Ymおよび空間成分Ysを受信し、これらの成分のうちの一つもしくは複数のサブバンドを利得調整して、空間強化を提供する。サブバンド空間処理器モジュール1510が成分処理器モジュール1420の一部である場合、非空間成分Ymは、ハイパーミッド成分M1もしくは残留ミッド成分M2であり得る。空間成分Ysは、ハイパーサイド成分S1もしくは残留サイド成分S2であり得る。サブバンド空間処理器モジュール1510が成分処理器モジュール106の一部である場合、非空間成分Ymは、ミッド成分126であり得て、空間成分Ysは、サイド成分128であり得る。
【0195】
サブバンド空間処理器モジュール1510は、非空間成分Ymを受信し、ミッドEQフィルタ1504(1)ないし1504(4)をYmの異なるサブバンドに適用して、強調された非空間成分Emを生成する。また、サブバンド空間処理器モジュール1510は、空間成分Ysを受信し、サイドEQフィルタ1506(1)ないし1506(4)をYsの異なるサブバンドに適用して、強調された空間成分Esを生成する。サブバンドフィルタは、ピーキングフィルタ、ノッチフィルタ、低域通過フィルタ、高域通過フィルタ、低域強調フィルタ、高強調フィルタ、帯域通過フィルタ、帯域阻止フィルタ、および/もしくは全域通過フィルタの種々の組み合わせを含むことができる。また、サブバンドフィルタは、それぞれのサブバンドに利得を適用し得る。より具体的には、サブバンド空間処理器モジュール1510は、非空間成分Ymにおけるn個の周波数サブバンドの各々に対するサブバンドフィルタと、空間成分Ysにおけるn個のサブバンドの各々に対するフィルタサブバンドとを含む。n=4のサブバンドの場合、例えば、サブバンド空間処理器モジュール1510は、サブバンド(1)に対するミッドイコライゼーション(EQ)フィルタ1504(1)、サブバンド(2)に対するミッドイコライゼーション(EQ)フィルタ1504(2)、サブバンド(3)に対するミッドEQフィルタ1504(3)、およびサブバンド(4)に対するミッドEQフィルタ1504(4)を含む、非空間成分Ymに対する一連のサブバンドフィルタを含む。各ミッドEQフィルタ1504は、非空間成分Ymの周波数サブバンド部分にフィルタ抽出を適用して、強調された非空間成分Emを生成する。
【0196】
サブバンド空間処理器モジュール1510は、サブバンド(1)に対するサイドイコライゼーション(EQ)フィルタ1506(1)、サブバンド(2)に対するサイドEQフィルタ1506(2)、サブバンド(3)に対するサイドEQフィルタ1506(3)、およびサブバンド(4)に対するサイドEQフィルタ1506(4)を含む、空間成分Ysの周波数サブバンドに対する一連のサブバンドフィルタをさらに含む。各サイドEQフィルタ1506は、空間成分Ysの周波数サブバンド部分にフィルタ抽出を適用して、強調された空間成分Esを生成する。
【0197】
非空間成分Ymおよび空間成分Ysにおけるn個の周波数サブバンドの各々は、ある周波数範囲に対応し得る。例えば、周波数サブバンド(1)は、0~300Hzに対応し得て、周波数サブバンド(2)は、300~510Hzに対応し得て、周波数サブバンド(3)は510~2700Hzに対応し得て、周波数サブバンド(4)は、2700Hzからナイキスト周波数(Nyquist frequency)に対応し得る。幾つかの実施形態では、n個の周波数サブバンドの各々は、統合された臨界帯域(critical bands)のセットである。臨界帯域は、広範な各種音楽ジャンルからの音声サンプルのコーパスを使用して決定され得る。24バーク尺度(Bark scale)の臨界帯域に亘るミッド成分ないしサイド成分の長期平均エネルギー比(long term average energy ratio)が、サンプルから決定される。次いで、同様の長期平均比(long term average ratio)を有する連続した周波数帯域が、共にグループ化されて、一連の臨界帯域を形成する。周波数サブバンドの範囲および周波数サブバンドの数は、調整可能であり得る。
【0198】
幾つかの実施形態では、サブバンド空間処理器モジュール1510は、残留ミッド成分M2を非空間成分Ymとして処理し、サイド成分、ハイパーサイド成分S1、もしくは残留サイド成分S2のうちの一つを空間成分Ysとして使用する。
【0199】
幾つかの実施形態では、サブバンド空間処理器モジュール1510は、ハイパーミッド成分M1、ハイパーサイド成分S1、残留ミッド成分M2、および残留サイド成分S2のうちの一つもしくは複数を処理する。これらの成分の各々のサブバンドに適用されるフィルタは、相違し得る。ハイパーミッド成分M1および残留ミッド成分M2は、非空間成分Ymについて説明されるように、それぞれ処理され得る。ハイパーサイド成分S1および残留サイド成分S2は、空間成分Ysについて説明されるように、それぞれ処理され得る。
【0200】
[クロストーク補償処理器の例]
図16は、一つもしくは複数の実施形態による、クロストーク補償処理器モジュール1610を示すブロック図である。クロストーク補償処理器モジュール1610は、成分処理器モジュール106もしくは1420のコンポーネントの一例である。クロストーク補償処理器モジュール1610に関する幾つかの実施形態は、本明細書に説明されるものとは異なるコンポーネントを有する。同様に、場合によっては、本明細書に説明されるものとは異なる方式において、コンポーネント成分間に機能を分散することができる。
【0201】
クロストーク補償処理器モジュール1610は、ミッド成分処理器1620およびサイド成分処理器1630を含む。クロストーク補償処理器モジュール1610は、非空間成分Ymおよび空間成分Ysを受信し、これらの成分のうちの一つもしくは複数にフィルタ抽出を適用して、(例えば、後または前の)クロストーク処理によって引き起こされるスペクトル欠陥(spectral defects)に対する補償を行う。クロストーク補償処理器モジュール1610が成分処理器モジュール1420の一部である場合、非空間成分Ymは、ハイパーミッド成分M1もしくは残留ミッド成分M2であり得る。空間成分Ysは、ハイパーサイド成分S1もしくは残留サイド成分S2であり得る。クロストーク補償処理器モジュール1610が成分処理器モジュール106の一部である場合、非空間成分Ymは、ミッド成分126であり得て、空間成分Ysは、サイド成分128であり得る。
【0202】
クロストーク補償処理器モジュール1610は、非空間成分Ymを受信し、ミッド成分処理器1620は、一組のフィルタを適用して、強調された非空間クロストーク補償成分Zmを生成する。また、クロストーク補償処理器モジュール1610は、空間サブバンド成分Ysを受信し、サイド成分処理器1630において一組のフィルタを適用して、強調された空間サブバンド成分Esを生成する。ミッド成分処理器1620は、m個のミッドフィルタ1640(a)、1640(b)から1640(m)までなどの、複数のフィルタ1640を含む。ここで、m個のミッドフィルタ1640の各々は、非空間成分Xにおけるm個の周波数帯域のうちの一つを処理する。したがって、ミッド成分処理器1620は、非空間成分Xを処理することによって、ミッドクロストーク補償チャネルZmを生成する。幾つかの実施形態では、ミッドフィルタ1640は、シミュレーションによるクロストーク処理を伴う、非空間成分Xの周波数応答プロットを使用して構成される。さらに、周波数応答プロットを分析することによって、クロストーク処理のアーティファクトとして発生する、所定の閾値(例えば、10dBなど)を超える周波数応答プロットにおけるピークもしくはトラフ(peaks or troughs)などの、任意のスペクトル欠陥を推定することができる。これらのアーティファクトは、主に、クロストーク処理において、遅延され、およびおそらく反転された対側信号(contralateral signals)が対応する同側信号(ipsilateral signals)に加算されることによって生じ、それによって効果的に最終レンダリング結果に対する櫛形フィルタ様(comb filter-like)の周波数応答を導入する。ミッドクロストーク補償チャネルZmは、推定されるピークもしくはトラフの補償を行うために、ミッド成分処理器1620によって生成することができ、m個の周波数帯域の各々がピークもしくはトラフに対応する。具体的には、クロストーク処理に適用される具体的な遅延、フィルタ抽出周波数、および利得に基づいて、周波数応答においてピークもしくはトラフが上下にシフトし、スペクトルの具体的な領域においてエネルギーの可変増幅および/もしくは可変減衰を引き起こす。ミッドフィルタ1640の各々は、ピークおよびトラフのうちの一つもしくは複数を調整するように構成され得る。
【0203】
サイド成分処理器1630は、m個のサイドフィルタ1650(a)、1650(b)から1650(m)までなどの、複数のフィルタ1650を含む。サイド成分処理器1630は、空間成分Xsを処理することによって、サイドクロストーク補償チャネルZsを生成する。幾つかの実施形態では、クロストーク処理を伴う空間Xの周波数応答プロットは、シミュレーションを通じて取得することができる。周波数応答プロットを分析することにより、クロストーク処理のアーティファクトとして発生する、所定の閾値(例えば、10dBなど)を超える周波数応答プロットにおけるピークもしくはトラフなどの、任意のスペクトル欠陥を推定することができる。サイドクロストーク補償チャネルZsは、推定されるピークもしくはトラフの補償を行うために、サイド成分処理器1630によって生成することができる。具体的には、クロストーク処理に適用される具体的な遅延、フィルタ抽出周波数、および利得に基づいて、周波数応答においてピークもしくはトラフが上下にシフトし、スペクトルの具体的な領域においてエネルギーの可変増幅および/もしくは可変減衰を引き起こす。サイドフィルタ1650の各々は、一つもしくは複数のピークもしくはトラフを調整するように構成され得る。幾つかの実施形態では、ミッド成分処理器1620およびサイド成分処理器1630は、異なる数のフィルタを含み得る。
【0204】
幾つかの実施形態では、ミッドフィルタ1640およびサイドフィルタ1650は、式(7)によって定義される伝達関数を有する双二次フィルタを含み得る。このようなフィルタを実装する一つの方法は、式(22)によって定義されるような直接形式Iトポロジーである。すなわち、
【0205】
【数40】
【0206】
ここで、Xは入力ベクトルであり、Yは出力である。それらの最大語長および飽加算動作に応じて、他のトポロジーが使用され得る。次いで、双二次は、実数値の入力および出力を有する二次フィルタを実装するために使用することができる。離散時間フィルタを設計するには、連続時間フィルタが設計され、次いで、双一次変換(bilinear transform)によって離散時間に変換される。さらに、結果として得られる中心周波数および帯域幅におけるシフトは、周波数ワーピング(frequency warping)を使用して補償され得る。
【0207】
例えば、ピーキングフィルタは、式(23)によって定義されるS面伝達関数(S-plane transfer function)を有し得る。すなわち、
【0208】
【数41】
【0209】
ここで、sは複素変数であり、Aはピーク振幅であり、Qはフィルタ「品質」であり、デジタルフィルタ係数は、次の式(24)によって定義される。
【0210】
【数42】
【0211】
ここで、ω0は、ラジアン単位のフィルタ中心周波数であり、
【0212】
【数43】
【0213】
である。さらに、フィルタ品質Qは、式(25)によって定義され得る。すなわち、
【0214】
【数44】
【0215】
ここで、Δfは帯域幅であり、fは中心周波数である。ミッドフィルタ1640は、直列であるものとして示され、サイドフィルタ1650は、直列であるものとして示される。幾つかの実施形態では、ミッドフィルタ1640は、ミッド成分Xに対して並列に適用され、サイドフィルタは、サイド成分Xsに対して並列に適用される。
【0216】
幾つかの実施形態では、クロストーク補償処理器モジュール1610は、ハイパーミッド成分M1、ハイパーサイド成分S1、残留ミッド成分M2、および残留サイド成分S2の各々を処理する。これらの成分の各々に適用されるフィルタは、相違し得る。
【0217】
[クロストーク処理器の例]
図17は、一つもしくは複数の実施形態による、クロストークシミュレーション処理器モジュール1700を示すブロック図である。クロストークシミュレーション処理器モジュール1700は、クロストーク処理器モジュール110もしくはクロストーク処理器モジュール1224の一例である。クロストークシミュレーション処理器モジュール1700に関する幾つかの実施形態は、本明細書に説明されるものとは異なるコンポーネントを有する。同様に、場合によっては、本明細書に説明されるものとは異なる方式において、コンポーネント間に機能を分散することができる。
【0218】
クロストークシミュレーション処理器モジュール1700は、ステレオヘッドフォンに出力するための対側音響成分(contralateral sound components)を生成し、それによってヘッドフォン上でラウドスピーカー様(loudspeaker-like)の聴取体験(聴取体験)を提供する。左入力チャネルXは、処理済みの左成分134/1220であり得て、右入力チャネルXは、処理済みの右成分136/1222であり得る。
【0219】
クロストークシミュレーション処理器モジュール1700は、左入力チャネルXを処理するために、左ヘッドシャドウ低域通過フィルタ1702、左ヘッドシャドウ高域通過フィルタ1724、左クロストーク遅延1704、および左ヘッドシャドウ利得1710を含む。クロストークシミュレーション処理器モジュール1700は、右入力チャネルXを処理するために、右ヘッドシャドウ低域通過フィルタ1706、右ヘッドシャドウ高域通過フィルタ1726、右クロストーク遅延1708、および右ヘッドシャドウ利得1712をさらに含む。クロストークシミュレーション処理器モジュール1500は、加算ユニット1714および加算ユニット1716をさらに含む。
【0220】
左ヘッドシャドウ低域通過フィルタ1702および左ヘッドシャドウ高域通過フィルタ1724は、傾聴者の頭部を通過した後の信号の周波数応答をモデル化する、左入力チャネルXに変調を適用する。左ヘッドシャドウ高域通過フィルタ1724の出力は、左クロストーク遅延1704に供給され、これは、時間遅延を適用する。この時間遅延は、同側音響成分(ipsilateral sound component)に対して対側音響成分によって通過される、経耳距離(transaural distance)を表す。左ヘッドシャドウ利得1710は、左クロストーク遅延1704の出力に利得を適用して、右左シミュレーションチャネルWを生成する。
【0221】
同様に、右入力チャネルXについては、右ヘッドシャドウ低域通過フィルタ1706および右ヘッドシャドウ高域通過フィルタ1726は、傾聴者の頭部における周波数応答をモデル化する、変調を右入力チャネルXRに適用する。右ヘッドシャドウ高域通過フィルタ1726の出力は、右クロストーク遅延1708に供給され、これは、時間遅延を適用する。右ヘッドシャドウ利得1712は、右クロストーク遅延1708の出力に利得を適用して、右クロストークシミュレーションチャネルWを生成する。
【0222】
左右のチャネルの各々に対するヘッドシャドウ低域通過フィルタ、ヘッドシャドウ高域通過フィルタ、クロストーク遅延、およびヘッドシャドウ利得の適用は、相違する順序において実行され得る。
【0223】
加算ユニット1714は、右クロストークシミュレーションチャネルWおよび左入力チャネルXを加算して、左出力チャネルOを生成する。加算ユニット1716は、左クロストークシミュレーションチャネルWおよび右入力チャネルXを加算して、左出力チャネルOを生成する。
【0224】
図18は、一つもしくは複数の実施形態による、クロストークキャンセル処理器モジュール1800を示すブロック図である。クロストークキャンセル処理器モジュール1800は、クロストーク処理器モジュール110もしくはクロストーク処理器モジュール1224の一例である。キャンセル処理器モジュール1800に関する幾つかの実施形態は、本明細書に説明されるものとは異なるコンポーネントを有する。同様に、場合によっては、本明細書に説明されるものとは異なる方式において、コンポーネント間に機能を分散することができる。
【0225】
クロストークキャンセル処理器モジュール1800は、左入力チャネルXおよび右入力チャネルXを受信し、チャネルX、X上でクロストークキャンセルを実行して、左出力チャネルOおよび右出力チャネルOを生成する。左入力チャネルXは、処理済みの左成分134/1220であり得て、右入力チャネルXは、処理された右成分136/1222であり得る。
【0226】
クロストークキャンセル処理器モジュール1800は、帯域内外分割器1810、インバータ1820および1822、対側推定器1830および1840、結合器1850および1852、ならびに帯域内外結合器1860を含む。これらのコンポーネントは、連携して動作して、入力チャネルT、Tを帯域内成分および帯域外成分に分割し、帯域内成分に対してクロストークキャンセルを実行して、出力チャネルO、Oを生成する。
【0227】
入力音声信号Tを異なる周波数帯域成分に分割し、選択的な成分(例えば、帯域内成分など)に対してクロストークキャンセルを実行することにより、他の周波数帯域における劣化(degradations)を回避しつつ、特定の周波数帯域に対してクロストークキャンセルを実行することができる。入力音声信号Tを異なる周波数帯域に分割することなく、クロストークキャンセルが実行される場合、そのようなクロストークキャンセル後の音声信号は、低周波数(例えば、350Hz未満など)、高周波数(例えば、12000Hz超など)、もしくはその両方における非空間成分および空間成分に大幅な減衰もしくは増幅を示す可能性がある。影響力のある空間的示唆の大部分が存在する、帯域内(例えば、250HZから14000Hzまでの間など)に対するクロストークキャンセルを選択的に実行することにより、ミックスにおけるスペクトルに亘って、特に、非空間成分において均整を保つ全体的なエネルギーを保持することができる。
【0228】
帯域内外分割器1810は、入力チャネルT、Tを帯域内チャネルTL,In、TR,In、および帯域外チャネルTL,Out、TR,Outにそれぞれ分離する。特に、帯域内外分割器1810は、左強化補償チャネルTを左帯域内チャネルTL,Inおよび左帯域外チャネルTL,Outに分離する。同様に、帯域内外分割器1810は、右強化補償チャネルTを右帯域内チャネルTR,In、右帯域外チャネルTR,Outに分離する。各帯域内チャネルは、例えば、250Hzないし14kHzを含む周波数範囲に対応するそれぞれの入力チャネルの一部を包含し得る。周波数帯域の範囲は、例えば、スピーカーのパラメータに従って、調整可能であり得る。
【0229】
インバータ1820および対側推定器1830は連携して動作して、左対側キャンセル成分Sを生成して、左帯域内チャネルTL,Inに起因する対側音響成分に対する補償を行う。同様に、インバータ1822および対側推定器1840は連携して動作して、右対側キャンセル成分Sを生成して、右帯域内チャネルTR,Inに起因する対側音響成分に対する補償を行う。
【0230】
一つのアプローチでは、インバータ1820は、帯域内チャネルTL,Inを受信し、受信済みの帯域内チャネルTL,Inの極性を反転して、反転された帯域内チャネルTL,In’を生成する。対側推定器1830は、反転された帯域内チャネルTL,In’を受信し、フィルタ抽出を通じて対側音響成分に対応する、反転された帯域内チャネルTL,In’の一部分を抽出する。フィルタ抽出は、反転された帯域内チャネルTL,In’に対して実行されるため、対側推定器1830によって抽出される部分は、対側音響成分に帰属する帯域内チャネルTL,Inの一部分の反転となる。それゆえ、対側推定器1830によって抽出される部分は、左対側キャンセル成分Sとなり、これを対応する帯域内チャネルTR,Inに追加して、帯域内チャネルTL,Inに起因する対側音響成分を低減させることができる。幾つかの実施形態では、インバータ1820および対側推定器1830は、相違するシーケンスにおいて実装される。
【0231】
インバータ1822および対側推定器1840は、帯域内チャネルTR,Inに関して同様の動作を実行して、右対側キャンセル成分Sを生成する。したがって、簡潔にするために、その詳細な説明については、本明細書では省略される。
【0232】
一つの実装例では、対側推定器1830は、フィルタ1832、増幅器1834、および遅延ユニット1836を含む。フィルタ1832は、反転入力チャネルTL,In’を受信し、フィルタ抽出機能を通じて対側音響成分に対応する反転帯域内チャネルTL,In’の一部分を抽出する。フィルタの実装例は、5000Hzおよび10000Hzの間で選択される中心周波数、0.5および1/0の間で選択されるQを有する、ノッチフィルタもしくは高域強調フィルタである。デシベル単位の利得(GdB)は、式(26)から導出され得る。
【0233】
【数45】
【0234】
ここで、Dは、例えば、48KHzのサンプルリングレートにおける、サンプル単位の遅延ユニット1836による遅延量である。代替の実装は、5000Hzおよび10000Hzの間で選択されるコーナー周波数、および0.5および1.0の間で選択されるQを有する低域通過フィルタである。さらに、増幅器1834は、抽出された部分を対応する利得係数GL,Inによって増幅し、遅延ユニット1836は、増幅器1834からの増幅出力を遅延関数Dに従って遅延させて、左対側キャンセル成分Sを生成する。対側推定器1840は、フィルタ1842、増幅器1844、および反転帯域内チャネルTR,In’に対する同様の動作を実行して、右対側キャンセル成分Sを生成する。一例では、対側推定器1830、1840は、以下の式に従って、左側および右側の対側キャンセル成分S、Sを生成する。すなわち、
【0235】
【数46】
【0236】
ここで、F[]はフィルタ関数であり、D[]は遅延関数である。
【0237】
クロストークキャンセルの構成は、スピーカーのパラメータによって決定することができる。一例では、フィルタ中心周波数、遅延量、増幅器利得、およびフィルタ利得は、傾聴者に対して二つのスピーカーの間に形成される角度に従って決定され得る。幾つかの実施形態では、スピーカー角度の間の値は、他の値を補間するために使用される。
【0238】
結合器1850は、右対側キャンセル成分Sを左帯域内チャネルTL,Inに結合させて、左帯域内クロストークチャネルUを生成し、結合器1852は、左対側キャンセル成分Sを右帯域内チャネルTR,Inに結合させて、右帯域内クロストークチャネルUを生成する。帯域内外結合器1860は、左帯域内クロストークチャネルUを帯域外チャネルTL,Outと結合させて、左出力チャネルOを生成し、右帯域内クロストークチャネルUを帯域外チャネルTR,Outと結合させて、右出力チャネルOを生成する。
【0239】
したがって、左出力チャネルOは、対側音に帰属する帯域内チャネルTR,Inの一部分の逆に対応する右対側キャンセル成分Sを含み、右出力チャネルOは、対側音に帰属する帯域内チャネルTL,Inの一部分の逆に対応する左対側キャンセル成分Sを含む。この構成では、右出力チャネルOに従って右ラウドスピーカーによって出力される同側音響成分の波面が右耳に到達すると、左出力チャネルOに従って左ラウドスピーカーによって出力される対側音響成分の波面を打ち消すことができる。同様に、左出力チャネルOに従って左ラウドスピーカーによって出力される同側音響成分の波面が左耳に到達すると、右出力チャネルOに従って右スピーカーによって出力される対側音響成分の波面を打ち消すことができる。そのため、対側音響成分は、空間検出性を高めるように低減させることができる。
【0240】
[PSMプロセスフローの例]
図19は、一つもしくは複数の実施形態による、PSM処理のプロセス1900を示すフローチャートである。プロセス1900は、より少ないステップもしくは追加のステップを含んでもよく、ステップは、相違する順序において実行されてもよい。幾つかの実施形態では、PSM処理は、ヒルベルト変換式知覚サウンドステージ修正(HPSM)モジュールを使用して実行され得る。
【0241】
ステップ1905では、音声処理システム(例えば、音声処理システム100もしくは1200のPSMモジュール102など)は、入力チャネルを低周波数成分および高周波数成分に分離する。低周波数成分および高周波数成分の間の境界を規定するクロスオーバー周波数は、PSM処理の対象となる周波数が高周波数成分に含まれるようにするように、調整可能であり得る。幾つかの実施形態では、音声処理システムは、低周波数成分および/もしくは高周波数成分に利得を適用する。
【0242】
入力チャネルは、PSM処理のために抽出される音声信号の特定部分でありことがある。幾つかの実施形態では、入力チャネルは、(例えば、ステレオもしくはマルチチャネルなど)音声信号のミッド成分もしくはサイド成分である。幾つかの実施形態では、入力チャネルは、音声信号のハイパーミッド成分、ハイパーサイド成分、残留ミッド成分、もしくは残留サイド成分である。幾つかの実施形態では、入力チャネルは、他の音と音声ミックスに結合されるべきである、発声もしくは楽器などの、音源に関連付けられる。
【0243】
ステップ1910では、音声処理システムは、第一のヒルベルト変換を高周波数成分に適用して、第一の左脚成分および第一の右脚成分を生成し、第一の左脚成分は、第一の右脚成分に対して90度位相がずれている。
【0244】
ステップ1915では、音声処理システムは、第二のヒルベルト変換を第一の右脚成分に適用して、第二の左脚成分および第二の右脚成分を生成し、第一の左脚成分は、第一の右脚成分に対して90度位相がずれている。
【0245】
幾つかの実施形態では、音声処理システムは、第一の左脚成分に遅延および/もしくは利得を適用する。音声処理システムは、第二の右脚成分に遅延および/もしくは利得を適用し得る。これらの利得および遅延は、PSM処理の知覚結果を操作するために使用され得る。
【0246】
ステップ1920では、音声処理システムは、第一の左脚成分を低周波数成分に結合させて、左チャネルを生成する。ステップ1925では、音声処理システムは、第二の右脚成分を低周波数成分に結合させて、右チャネルを生成する。左チャネルは、左スピーカーに提供され得て、右チャネルは、右スピーカーに提供され得る。
【0247】
図20は、幾つかの実施形態による、一次非直交回転ベースの相関除去(FNORD)フィルタネットワークを使用する、PSM処理のための別のプロセス2000を示すフローチャートである。図20に示される処理は、音声システム(例えば、システム100、202、もしくは1200など)のコンポーネントによって実行され得る。他のエンティティは、他の実施形態では、図2におけるステップの一部または全部を実行し得る。実施形態は、相違するステップおよび/もしくは追加のステップを含んでもよいし、または相違する順序においてステップを実行してもよい。
【0248】
ステップ2005では、音声システムは、結果として得られる複数のチャネルを生成するために、モノラル音声信号に符号化される一つもしくは複数の空間的示唆を規定する目標振幅応答を決定し、一つもしくは複数の空間的示唆は、結果として得られるチャネルのミッド空間/サイド空間に符号化される一つもしくは複数の周波数依存振幅示唆に関連付けられ、これらのチャネルのミッド空間/サイド空間は、結果として得られるチャネルの全体的なカラレーションを変化させない。一つもしくは複数の空間的示唆は、目標仰角に関連付けられる少なくとも一つの仰角示唆を含み得る。各仰角示唆は、一つもしくは複数の特定の周波数における無限減衰の狭い領域に対応する目標振幅関数などの、音声信号のミッド空間/サイド空間に符号化される一つもしくは複数の周波数依存振幅示唆に対応し得る。一方、仰角に対する左右の示唆は、典型的には、カラレーションに対称であるため、左右の信号は、カラーレスになるように制約され得る。幾つかの実施形態では、空間的示唆は、サンプル抽出されるHRTFに基づき得る。
【0249】
幾つかの実施形態では、目標振幅応答は、目標広帯域減衰、目標サブバンド減衰、臨界点、フィルタ特性、および/もしくは示唆が埋め込まれるべきであるサウンドステージの位置を含み得る、一つもしくは複数のパラメトリック空間的示唆をさらに規定し得る。臨界点は、3dBにおける変曲点である可能性がある。フィルタ特性は、高域通過フィルタ特性、低域通過特性、帯域通過特性、もしくは帯域除去特性のうちの一つを含み得る。サウンドステージの位置には、ミッドチャネルもしくはサイドチャネルが含まれることがあり、または出力チャネルの数が二つより多い場合には、ペア毎、ならびに/または階層的な加算および/もしくは差分を介して決定されるものなどの、出力空間内の他のサブスペースも含まれることがある。一つもしくは複数の空間的示唆は、プレゼンテーション機器の特性(例えば、話者の周波数応答、話者の位置など)、音声データの予想される内容、場面における傾聴者の知覚能力、または関係する音声プレゼンテーションシステムに期待される最低品質に基づいて、決定され得る。例えば、話者が200Hz未満の周波数を十分に再生することが不可能である場合、この範囲に埋め込まれた空間的示唆は、避けるべきである。同様に、予期される音声のコンテンツがスピーチである場合、音声システムは、スピーチの予期される帯域幅内にある、耳が最も敏感である周波数のみに影響を与える、目標振幅応答を選択し得る。傾聴者が、その場所にあるスピーカーのアレイなどの、状況における他の源から可聴的示唆(audible cues)を導き出すことになる場合、音声システムは、それらの同時的示唆(simultaneous cues)を補完している目標振幅応答を決定し得る。
【0250】
ステップ2010では、音声システムは、目標振幅応答に基づいて、単一入力複数出力の全域通過フィルタに対する伝達関数を決定する。この伝達関数は、出力チャネルの位相角における相対的回転を規定する。この伝達関数は、周波数の関数としての位相角回転(phase angle rotations)の観点から、各出力に対してフィルタネットワークがその入力に与える影響を表す。
【0251】
ステップ2015では、音声システムは、伝達関数に基づいて、全域通過フィルタの係数を決定する。これらの係数は、示唆および/もしくは制約の種類に最適な方式において選択され、到来する音声ストリームに適用されることになる。係数セットの幾つかの例は、式 (12)、(13)、(17)、および(19)において定義されている。幾つかの実施形態では、伝達関数に基づいて全域通過フィルタの係数を決定することは、逆離散フーリエ変換(idft)を使用することを含む。この場合、係数セットは、式(19)によって定義されるように決定され得る。幾つかの実施形態では、伝達関数に基づいて全域通過フィルタの係数を決定することは、フェーズボコーダ(phase-vocoder)を使用することを含む。この場合、係数セットは、時間領域データを再合成する前に、周波数領域に適用されることになることを除いて、式(19)によって定義されるように決定され得る。幾つかの実施形態では、これらの係数は、受信された臨界点パラメータ、フィルタ特性パラメータ、およびサウンドステージ位置パラメータに基づいて決定される、少なくとも回転制御パラメータおよび一次係数を含む。
【0252】
音声システム2020は、モノラルチャネルを全域通過フィルタの係数によって処理して、複数のチャネルを生成する。例えば、幾つかの実施形態では、全域通過フィルタモジュールは、モノラル音声チャネルを受信し、モノラル音声チャネルに対して広帯域位相回転を実行して、回転制御パラメータに基づいて、複数の広帯域回転成分チャネル(例えば、左右の広帯域回転成分など)を生成し、一次係数に基づいて、複数の広帯域回転成分チャネルのうちの少なくとも一つに対して狭帯域位相回転を実行して、狭帯域回転成分チャネルを決定し、これらは、広帯域回転成分チャネルの一つもしくは複数の残りのチャネルと共に、音声システムによって出力される複数のチャネルを形成する。
【0253】
幾つかの実施形態では、式(8)におけるように、IIR実装を使用して、システムが時間領域において動作している場合、これらの係数は、適切なフィードバック遅延およびフィードフォワード遅延を調整し得る。式(19)におけるように、FIR実装が使用される場合、フィードフォワード遅延のみが使用され得る。係数がスペクトル領域において決定され適用される場合、係数は、再合成を行う前に、複素乗算としてスペクトルデータに適用され得る。音声システムが、ネットワークを介して音声システムに接続されるユーザー機器などの、プレゼンテーション機器に複数の出力チャネルを提供し得る。
【0254】
上述されるPSM処理フローの例は、全域通過フィルタのネットワークをそれぞれ利用して、サウンドステージにおける特定位置(例えば、目標仰角に関連付けられた位置など)にモノラルコンテンツを知覚的に配置することにより、空間的示唆を符号化する。本明細書に説明される全域通過フィルタのネットワークはカラーレスであるため、これらのフィルタは、ユーザーが音声の空間的配置をその全体的なカラレーションから減結合することを可能にする。
【0255】
[直交成分の空間処理]
図21は、一つもしくは複数の実施形態による、ハイパーミッド、残留ミッド、ハイパーサイド、もしくは残留サイド成分のうちの少なくとも一つを使用する、空間処理のためのプロセス2100を示すフローチャートである。空間処理には、利得の適用、振幅もしくは遅延ベースのパンニング、バイノーラル処理、残響処理、圧縮および制限などのダイナミックレンジ処理、線形もしくは非線形の音声処理技術および効果、コーラス効果、フランジング効果、他の技術の中でもとりわけ、発声スタイルもしくは楽器スタイルの転送、変換または再合成に対する機械学習ベースのアプローチなどが含まれ得る。このプロセスは、空間的に強調された音声をユーザーの機器に提供するために実行され得る。このプロセスは、より少ないステップもしくは追加のステップを含み得て、ステップは、相違する順序において実行され得る。
【0256】
ステップ2110では、音声処理システム(例えば、音声処理システム1200など)は、入力音声信号(例えば、左チャネル1202および右入力チャネル1204など)を受信する。幾つかの実施形態では、入力音声信号は、複数の左右チャネル対を含む、マルチチャネル音声信号であり得る。各左右チャネル対は、左右の入力チャネルについて、本明細書に説明されるように処理され得る。
【0257】
ステップ2120では、音声処理システムは、入力音声信号から非空間ミッド成分(例えば、ミッド成分1208など)および空間サイド成分(例えば、サイド成分1210など)を生成する。幾つかの実施形態では、L/R-M/S変換器(例えば、L/R-M/S変換器モジュール1206など)は、ミッドおよびサイド成分への入力音声信号の変換を実行する。
【0258】
ステップ2130では、音声処理システムは、ハイパーミッド成分(例えば、ハイパーミッド成分M1など)、ハイパーサイド成分(例えば、ハイパーサイド成分S1など)、残留ミッド成分(例えば、残留ミッド成分M2など)、および残留サイド成分(例えば、残留サイド成分S2など)のうちの少なくとも一つを生成する。音声処理システムは、上記に列挙される成分の少なくとも一つおよび/もしくは全てを生成し得る。ハイパーミッド成分は、ミッド成分のスペクトルエネルギーから除去されるサイド成分のスペクトルエネルギーをふくむ。残留ミッド成分は、ミッド成分のスペクトルエネルギーから除去されるハイパーミッド成分のスペクトルエネルギーを含む。ハイパーサイド成分は、サイド成分のスペクトルエネルギーから除去されるミッド成分のスペクトルエネルギーを含む。残留サイド成分は、サイド成分のスペクトルエネルギーから除去されるハイパーサイド成分のスペクトルエネルギーを含む。M1、M2、S1、もしくはS2を生成するために使用される処理は、周波数領域または時間領域において実行され得る。
【0259】
ステップ2140では、音声処理システムは、ハイパーミッド成分、残留ミッド成分、ハイパーサイド成分、および残留サイド成分のうちの少なくとも一つをフィルタ抽出して、音声信号を強化させる。フィルタ抽出は、HPSM処理を含み得て、一連のヒルベルト変換が、ハイパーミッド成分、残留ミッド成分、ハイパーサイド成分、もしくは残留サイド成分の高周波数成分に適用される。一例では、ハイパーミッド成分は、HPSM処理を受けるが、一方、残留ミッド成分、ハイパーサイド成分、もしくは残留サイド成分のうちの一つもしくは複数は、他種類のフィルタ抽出を受ける。
【0260】
フィルタ抽出は、PSM処理を含み得て、図10Aおよび10Bに関連してより詳細に上述されるように、空間的示唆のパラメトリック仕様を通じて、または式(20)に関連して上述されるように、HRTFデータの身体計測のサンプル抽出を介しての何れかによって、空間的示唆がカラーレスに符号化される。一例では、ハイパーミッド成分は、PSM処理を受けるが、一方、残留ミッド成分、ハイパーサイド成分、もしくは残留サイド成分のうちの一つもしくは複数は、フィルタ抽出を受けないか、または他種類のフィルタ抽出を受ける。
【0261】
フィルタ抽出には、空間的示唆の処理のような他種類のフィルタ抽出が含まれ得る。空間的示唆の処理は、ハイパーミッド成分、残留ミッド成分、ハイパーサイド成分、または残留サイド成分の周波数依存振幅もしくは周波数依存遅延を調整することを含み得る。空間的示唆の処理の例には、振幅もしくは遅延ベースのパンニング、またはバイノーラル処理が含まれる。
【0262】
フィルタ抽出には、圧縮もしくは制限などの、ダイナミックレンジ処理が含まれ得る。例えば、ハイパーミッド成分、残留ミッド成分、ハイパーサイド成分、もしくは残留サイド成分は、圧縮のための閾値レベルを超える際の圧縮率に従って圧縮され得る。別の例では、ハイパーミッド成分、残留ミッド成分、ハイパーサイド成分、もしくは残留サイド成分は、制限のための閾値レベルを超える際の最大レベルに制限され得る。
【0263】
フィルタ抽出には、ハイパーミッド成分、残留ミッド成分、ハイパーサイド成分、もしくは残留サイド成分に対する機械学習ベースの変更が含まれ得る。幾つか例には、機械学習ベースの発声スタイルもしくは楽器スタイルの転送、変換、または再合成が含まれる。
【0264】
ハイパーミッド成分、残留ミッド成分、ハイパーサイド成分、もしくは残留サイド成分のフィルタ抽出には、利得の適用、残響処理、ならびにコーラスおよび/もしくはフランジング、または他種類の処理まで及ぶ、他の線形もしくは非線形の音声処理技術および効果が含まれ得る。幾つかの実施形態では、フィルタ抽出は、図22に関連してより詳細に後述されるように、サブバンド空間処理およびクロストーク補償のためのフィルタ抽出を含み得る。
【0265】
フィルタ抽出は、周波数領域もしくは時間領域において実行され得る。幾つかの実施形態では、ミッド成分およびサイド成分は、時間領域から周波数領域に変換され、ハイパー成分および/もしくは残留成分は、周波数領域において生成され、フィルタ抽出は、周波数領域において実行され、フィルタ抽出された成分は、時間領域に変換され、フィルタ抽出は、これらの成分に対して時間領域において実行される。
【0266】
ステップ2150では、音声処理システムは、フィルタ抽出済みのハイパー成分/残留成分のうちの一つもしくは複数を使用して、左出力チャネル(例えば、左出力チャネル1242など)および右出力チャネル(例えば、右出力チャネル1244など)を生成する。例えば、M/SからL/Rへの変換は、フィルタ抽出済みのハイパーミッド成分、フィルタ抽出済みの残留ミッド成分、フィルタ抽出済みのハイパーサイド成分、もしくはフィルタ抽出済みの残留サイド成分のうちの少なくとも一つから生成されるミッド成分もしくはサイド成分を使用して実行され得る。別の例では、フィルタ抽出済みのハイパーミッド成分もしくはフィルタ抽出済みの残留ミッド成分が、M/SからL/Rへの変換のためのミッド成分として使用されてもよく、またはフィルタ抽出済みのハイパーサイド成分または残留サイド成分が、M/SからL/Rへの変換のためのサイド成分として使用されてもよい。
【0267】
[直交成分のサブバンド空間処理およびクロストーク処理]
図22は、一つもしくは複数の実施形態による、ハイパーミッド、残留ミッド、ハイパーサイド、もしくは残留サイド成分のうちの少なくとも一つを使用する、サブバンド空間処理およびクロストーク処理用補償のための、プロセス2200を示すフローチャートである。クロストーク処理には、クロストークキャンセルもしくはクロストークシミュレーションが含まれ得る。サブバンド空間処理は、音がラウドスピーカーの位置に対応する空間における特定点ではない、広い領域から傾聴者に向けられるという認識を作り出すことによるように、強化された空間検出可能性を有する音声コンテンツ(例えば、サウンドステージの強化など)を提供するために実行され得て、それによって傾聴者により没入感のある聴取体験をもたらする。クロストークシミュレーションは、対側クロストークを有するラウドスピーカー体験のシミュレーションを行うために、ヘッドフォンへの音声出力に使用され得る。クロストークキャンセルは、クロストーク干渉の影響を除去するために、ラウドスピーカーへの音声出力に使用され得る。クロストーク補償は、クロストークキャンセルもしくはクロストークシミュレーションによって引き起こされるスペクトル欠陥に対する補償を行う。プロセスは、より少ないステップもしくは追加のステップを含み得て、ステップは、相違する順序において実行され得る。ハイパーおよび残留のミッド成分/サイド成分は、様々な目的に応じて様々な方法において操作することができる。例えば、クロストーク補償の場合では、目標とするサブバンドフィルタ抽出は、その成分のみにおけるクロストーク処理から生じるスペクトルのアーティファクトを除去するための取組みにおいて、(多くの映画コンテンツにおける発声ダイアログエネルギー(vocal dialog energy)の大部分が発生する)ハイパーミッド成分M1のみに適用され得る。クロストーク処理の有無に関わらず、サウンドステージを強化する場合、目標とするサブバンド利得は、残留ミッド成分M2および残留サイド成分S2に適用され得る。例えば、残留ミッド成分M2は減衰され得て、残留サイド成分S2は逆増幅されて、(例えば、多くの場合、発声エネルギーの大部分を含む信号のその部分である)ハイパーミッドM1成分における減衰も回避しつつ、最終的なL/R信号の知覚的音響に劇的な全体的変化を生じさせることなく、利得の観点からこれらの成分間の距離を増大させ得る(これは、センス良く行われれば、空間的な検出可能性を増大させることができる)。
【0268】
ステップ2210では、音声処理システムは、左チャネルおよび右チャネルを含む、入力音声信号を受信する。幾つかの実施形態では、入力音声信号は、複数の左右チャネル対を含む、マルチチャネル音声信号であり得る。各左右チャネル対は、左右の入力チャネルについて、本明細書に説明されるように処理され得る。
【0269】
ステップ2220では、音声処理システムは、受信された入力音声信号にクロストーク処理を適用する。クロストーク処理には、クロストークシミュレーションおよびクロストークキャンセルのうちの少なくとも一つが含まれる。
【0270】
ステップ2230ないし2260では、音声処理システムは、ハイパーミッド、ハイパーサイド、残留ミッド、もしくは残留サイド成分のうちの一つもしくは複数を使用して、サブバンド空間処理と、クロストーク処理に対するクロストーク補償とを実行する。幾つかの実施形態では、クロストーク処理は、ステップ2230ないし2260の処理の後に実行され得る。
【0271】
ステップ2230では、音声処理システムは、(例えば、クロストーク処理済みの)音声信号からミッド成分およびサイド成分を生成する。
【0272】
ステップ2240では、音声処理システムは、ハイパーミッド成分、残留ミッド成分、ハイパーサイド成分、および残留サイド成分のうちの少なくとも一つを生成する。音声処理システムは、上記に列挙される成分の少なくとも一つおよび/もしくは全てを生成し得る。
【0273】
ステップ2250では、音声処理システムは、ハイパーミッド成分、残留ミッド成分、ハイパーサイド成分、および残留サイド成分のうちの少なくとも一つのサブバンドをフィルタ抽出し、音声信号にサブバンド空間処理を適用する。各サブバンドには、臨界帯域のセットによって定義され得るような周波数範囲が含まれることがある。幾つかの実施形態では、サブバンド空間処理は、ハイパーミッド成分、残留ミッド成分、ハイパーサイド成分、および残留サイド成分のうちの少なくとも一つのサブバンドを時間遅延させることをさらに含む。幾つかの実施形態では、フィルタ抽出は、HPSM処理を適用することを含む。
【0274】
ステップ2260では、音声処理システムは、入力音声信号のクロストーク処理からのスペクトル欠陥の補償を行うために、ハイパーミッド成分、残留ミッド成分、ハイパーサイド成分、および残留サイド成分のうちの少なくとも一つをフィルタ抽出する。スペクトル欠陥には、クロストーク処理のアーティファクトとして発生する、所定の閾値(例えば、10dBなど)を超えるハイパーミッド成分、残留ミッド成分、ハイパーサイド成分、もしくは残留サイド成分の、周波数応答プロットにおけるピークもしくはトラフが含まれ得る。スペクトル欠陥は、推定されるスペクトル欠陥であり得る。
【0275】
幾つかの実施形態では、ステップ2250におけるサブバンド空間処理のためのスペクトル直交成分のフィルタ抽出、およびステップ2260におけるクロストーク補償は、フィルタ抽出のために選択される各スペクトル直交成分に対する単一のフィルタ抽出動作に統合され得る。
【0276】
幾つかの実施形態では、サブバンド空間処理もしくはクロストーク補償のためのハイパー/残留のミッド成分/サイド成分におけるフィルタ抽出は、利得の適用、振幅もしくは遅延ベースのパンニング、バイノーラル処理、残響処理、圧縮および制限などのダイナミックレンジ処理、コーラスおよび/もしくはフランジングから及ぶ線形もしくは非線形の音声処理技術および効果、発声スタイルもしくは楽器スタイルの転送、変換、もしくは再合成への機械学習ベースのアプローチ、またはハイパーミッド成分、残留ミッド成分、ハイパーサイド成分、残留サイド成分の何れかを使用する他種類の処理などの、他の目的のためのフィルタ抽出に関連して実行され得る。
【0277】
フィルタ抽出は、周波数領域もしくは時間領域において実行され得る。幾つかの実施形態では、ミッド成分およびサイド成分は、時間領域から周波数領域に変換され、ハイパー成分および/もしくは残留成分は、周波数領域において生成され、フィルタ抽出は、周波数領域において実行され、フィルタ抽出された成分は、時間領域に変換される。他の実施形態では、ハイパーおよび/もしくは残留の成分は、時間領域に変換され、フィルタ抽出は、これらの成分に対して時間領域において実行される。
【0278】
ステップ2270では、音声処理システムは、フィルタ抽出されたハイパーミッド成分から左出力チャネルおよび右出力チャネルを生成する。幾つかの実施形態では、左右の出力チャネルは、付加的に、フィルタ抽出済みの残留ミッド成分、フィルタ抽出済みのハイパーサイド成分、およびフィルタ抽出済みの残留サイド成分のうちの少なくとも一つに基づいている。
【0279】
[コンピュータの例]
図23は、幾つかの実施形態による、コンピュータ2300を示すブロック図である。コンピュータ2300は、音声システム100、202、もしくは1200などの、音声システムを実装する回路を含むコンピューティング機器の一例である。チップセット2304に結合される少なくとも一つのプロセッサ2302が例証されている。チップセット2304は、メモリコントローラハブ2320および入出力(I/O)コントローラハブ2322を含む。メモリ2306およびグラフィックアダプタ2312は、メモリコントローラハブ2320に結合され、ディスプレイ2318は、グラフィックアダプタ2312に結合される。記憶デバイス2308、キーボード2310、ポインティングデバイス2314、およびネットワークアダプタ2316は、I/Oコントローラハブ2322に結合される。コンピュータ2300は、種々の種類の入力装置もしくは出力装置を含み得る。コンピュータ2300の他の実施形態は、相違するアーキテクチャを有する。例えば、幾つかの実施形態では、メモリ2306は、プロセッサ2302に直接に接続される。
【0280】
記憶デバイス2308は、ハードドライブ、コンパクトディスク読取専用メモリ(CD-ROM)、DVD、もしくはソリッドステートメモリデバイスなどの、一つもしくは複数の非一時的コンピュータ可読記憶媒体を含む。メモリ2306は、プロセッサ2302によって使用される(一つもしくは複数の命令によって構成される)プログラムコードおよびデータを保持する。このプログラムコードは、図1ないし3を参照して説明される処理態様に対応し得る。
【0281】
ポインティングデバイス2314は、コンピュータシステム2300にデータを入力するために、キーボード2310と組み合わせて使用される。グラフィックアダプタ2312は、ディスプレイ2318上に画像および他の情報を表示する。幾つかの実施形態では、ディスプレイ2318は、ユーザー入力およびユーザー選択を受信するためのタッチスクリーン機能を含む。ネットワークアダプタ2316は、コンピュータシステム2300をネットワークに接続する。コンピュータ2300に関する幾つかの実施形態は、図23に示されるものとは異なるコンポーネントおよび/もしくは他のコンポーネントを有する。
【0282】
回路は、非一時的コンピュータ可読媒体に格納されるプログラムコードを実行する、一つもしくは複数のプロセッサを含み得て、このプログラムコードは、一つもしくは複数のプロセッサによって実行されると、音声システムまたは音声システムのモジュールを実装するように一つもしくは複数のプロセッサを構成する。音声システムもしくは音声システムのモジュールを実装する回路の他の例には、特定用途向け集積回路(AS1C)、フィールドプログラマブルゲートアレイ(FPGA)、もしくは他種類のコンピュータ回路などの、集積回路が含まれ得る。
【0283】
[追加の考慮事項]
開示される構成の利点および長所の例には、デバイスおよび関連する音声レンダリングシステムに適応して強化される音声システムに起因する動的な音声強化、ならびに(例えば、音声信号が、ゲーム用ではなく、音楽再生用に使用されることを示す)ユースケース情報などの、デバイスOSによって利用可能にされる他の関連情報が含まれる。強化された音声システムは、(ソフトウェア開発キットを使用して)デバイスに統合されるか、またはオンデマンドでアクセス可能であるように遠隔サーバに保存されるかの何れかを行われ得る。このようにして、デバイスは、その音声レンダリングシステムもしくは音声レンダリング構成に固有である、音声強化システムのメンテナンスにストレージまたは処理リソースを割り当てる必要がなくなる。幾つかの実施形態では、強化された音声システムは、利用可能な機器固有のレンダリング情報における種々のレベルに亘って、効果的な音声強化を適用することができるように、レンダリングシステム情報に対する種々のレベルのクエリを可能にする。
【0284】
本明細書全体を通じて、単一のインスタンスとして説明されるコンポーネント、操作、もしくは構造を、複数のインスタンスが実装することがある。一つもしくは複数の方法における個々の動作は、別個の動作として図示および説明されているが、一つもしくは複数の個別の動作は、同時に実行され得て、図示された順序において動作が実行されることは必要としない。構成例では別個のコンポーネントとして提示される構造および機能は、結合される構造もしくはコンポーネントとして実装され得る。同様に、単一のコンポーネントとして提示される構造および機能は、別個のコンポーネントとして実装され得る。これらおよび他の変形、修正、追加、および改良は、本明細書では主題の範囲内に含まれる。
【0285】
特定の実施形態は、ロジック、または多数のコンポーネント、モジュール、もしくは機構を含むものとして、本明細書に説明される。モジュールは、ソフトウェアモジュール(例えば、機械可読媒体上もしくは送信信号に具体化されるコードなど)またはハードウェアモジュールの何れかを構成し得る。ハードウェアモジュールは、特定の操作を実行することが可能である有形のユニットであり、特定の方法において構成もしくは配置され得る。実施形態の例では、一つもしくは複数のコンピュータシステム(例えば、スタンドアロン、クライアントもしくはサーバコンピュータシステムなど)、またはコンピュータシステムの一つもしくは複数のハードウェアモジュール(例えば、プロセッサもしくはプロセッサのグループなど)は、ソフトウェア(例えば、アプリケーションもしくはアプリケーションの部分)によって、本明細書に説明される特定の操作を実行するように動作するハードウェアモジュールとして構成される。
【0286】
本明細書に説明される方法例における種々の動作は、関連の動作を実行するように一時的に(例えば、ソフトウェアによって)構成されるか、または永続的に構成される、一つもしくは複数のプロセッサによって、少なくとも部分的に実行され得る。一時的もしくは永続的に構成されるかどうかに関わらず、そのようなプロセッサは、一つもしくは複数の操作または機能を実行するように動作する、プロセッサ実装モジュールを構成し得る。本明細書に言及されるモジュールは、幾つかの実施形態の例では、プロセッサ実装モジュールを含み得る。
【0287】
同様に、本明細書に説明される方法は、少なくとも部分的にプロセッサ実装され得る。例えば、方法における操作の少なくとも一部は、一つもしくは複数のプロセッサ、またはプロセッサ実装ハードウェアモジュールによって実行され得る。特定の操作に関するパフォーマンスは、単一のマシン内に常駐するだけでなく、複数のマシンに亘って展開される、一つもしくは複数のプロセッサ間に分散され得る。幾つかの実施形態の例では、プロセッサもしくはプロセッサ群は、単一の場所(例えば、家庭環境内、オフィス環境内、もしくはサーバファームとして)に配置され得るが、他の実施形態では、プロセッサは、多数の場所に亘って分散され得る。
【0288】
特に明記されていない限り、「処理する(processing)」、「計算する(computing)」、「計算する(calculating)」、「決定する(determining)」、「提示する(presenting)」、または「表示する(displaying)」などの、用語を使用する本明細書における説明は、例えば、一つもしくは複数のメモリ(例えば、揮発性メモリ、不揮発性メモリ、もしくはそれらの組み合わせなど)、レジスタ、または情報の受信、保存、送信、伝送、もしくは表示を行う他のマシンコンポーネント内の物理的(例えば、電子的、磁気的、もしくは光学的) な量として表現されるデータを操作もしくは変換するマシン(例えば、コンピュータなど)の動作もしくはプロセスを指すことがある。
【0289】
本明細書に使用されるように、「ある実施形態(one embodiment)」もしくは「一実施形態(an embodiment)」への言及は、何れも、その実施形態に関連して説明される特定の要素、特徴、構造、もしくは特性が、少なくとも一つの実施形態に含まれることを意味する。本明細書における様々な場所に現れる「ある実施形態において(in one embodiment)」という語句は、必ずしも全てが同じ実施形態を指すわけではない。
【0290】
幾つかの実施形態は、「結合された(coupled)」および「接続された(connected)」という表現をその派生語とともに使用して説明されることがある。これらの用語は、相互に同義語として意図されていないと、理解されるべきである。例えば、幾つかの実施形態は、二つ以上の要素が相互に直接物理的もしくは電気的に接触していることを示すために、「接続された(connected)」という用語を使用して説明され得る。別の例では、幾つかの実施形態は、二つ以上の要素が直接物理的または電気的に接触していることを示すために、「結合された(coupled)」という用語を使用して説明され得る。ただし、「結合された(coupled)」という用語は、二つ以上の要素が相互に直接接触していないものの、依然として相互に連携もしくは相互作用を行っていることを意味することもある。実施形態は、この状況に限定されない。
【0291】
本明細書に使用されるように、「備える(comprises)」、「備える(comprising)」、「含む(includes)」、「含む(including)」、「有する(has)」、「有する(having)」という用語、もしくはそれらの他の任意の変形は、非排他的な包含を被覆することを意図されている。例えば、要素のリストを含む、プロセス、方法、物品、もしくは装置は、必ずしもそれらの要素のみに限定されるわけではなく、明示的に列挙されていない、またはそのようなプロセス、方法、物品、もしくは装置に固有となる他の要素を含むことがある。さらに、明示的に反対の記載がない限り、「または(or)」は、包括的なorを指し、排他的なorを指していない。例えば、条件A or Bは、次の何れか 一つによって満たされる。すなわち、Aが真である(もしくは存在する)かつBが偽である(もしくは存在しない)こと、Aが偽である(もしくは存在しない) かつBが真である(もしくは存在する)こと、AおよびBの両方が真である(または存在ない)こと。
【0292】
さらに、「a」もしくは「an」の使用は、本明細書における実施形態の要素およびコンポーネントを説明するために使用される。これは、単に便宜上、本発明における通常の意味を理解するために行われる。この説明は、一つもしくは少なくとも一つを含むように解釈されるべきであり、それが別の意味であることが明らかでない限り、単数形は、複数形も含む。
【0293】
この説明における幾つかの部分では、情報に対する演算のアルゴリズムおよび記号表現の観点から、実施形態を説明する。これらのアルゴリズムの記述および表現は、データ処理技術の当業者によって、その仕事の内容を他の当業者に効果的に伝えるために、一般的に使用されている。これらの動作は、機能的に、計算的に、もしくは論理的に説明されるが、コンピュータプログラム、または同等の電気回路、もくしはマイクロコードなどによって実装されると理解される。さらに、一般性を失うことなく、これらの操作の配置をモジュールと呼ぶことも、時には便利であることが証明されている。説明される動作およびそれらに関連付けられるモジュールは、ソフトウェア、ファームウェア、ハードウェア、もしくはそれらの任意の組み合わせにおいて具現化され得る。
【0294】
本明細書に説明される、ステップ、操作、もしくはプロセスの何れも、一つもしくは複数のハードウェア、またはソフトウェアモジュールを単独で、もしくは他のデバイスと組み合わせて実行もしくは実装され得る。ある実施形態では、ソフトウェアモジュールは、コンピュータプログラムコードを含むコンピュータ可読媒体を含むコンピュータプログラム製品によって実装され、コンピュータプログラムコードは、記載されるステップ、操作、もしくはプロセスの何れかまたは全てを実行するために、コンピュータプロセッサによって実行することができる。
【0295】
実施形態は、本明細書における操作を実行するための装置にも関係し得る。この装置は、必要とされる目的のために具体的に構築され得て、ならびに/またはコンピュータに格納されるコンピュータプログラムによって選択的に起動もしくは再構成される汎用コンピューティング機器を含み得る。このようなコンピュータプログラムは、非一時的で有形のコンピュータ可読記憶媒体、もしくはコンピュータシステムバスに結合され得る電子的命令を格納するのに適する任意種類の媒体に保存され得る。さらに、本明細書に言及される全てのコンピューティングシステムは、単一のプロセッサを含んでもよく、またはコンピューティング能力を向上させるために複数のプロセッサ設計を採用するアーキテクチャであってもよい。
【0296】
実施形態は、本明細書に説明されるコンピューティングプロセスによって生成される、製品にも関係し得る。このような製品は、コンピューティングプロセスから得られる情報を含み得て、その情報は、非一時的で有形のコンピュータ可読記憶媒体に格納され、コンピュータプログラム製品もしくは本明細書に説明される他のデータの組み合わせにおける任意の実施形態を含み得る。
【0297】
本開示を読むと、当業者は、本明細書に開示される原理による音声コンテンツ相関除去化のためのシステムおよびプロセスのさらに追加的代替的な構造的および機能的設計を理解するであろう。そのため、特定の実施形態および用途は、図示および説明されているが、開示される実施形態は、本明細書に開示される正確な構造および構成要素に限定されないと理解されるべきである。当業者には明らかになるであろう、種々の修正、変更、および変形が、添付の請求項に定義される趣旨および範囲から逸脱することなく、本明細書に開示される方法および装置における配置、操作、および詳細において行われ得る。
【0298】
最後に、本明細書に使用される言語は、主に、読み易さおよび教育目的のために選択されており、特許権を描写したり制限したりするために選択されていないことがある。したがって、特許権の範囲は、この詳細な説明によってではなく、むしろ本明細書に基づく出願に関して発行される任意の請求項によって限定されることを意図している。したがって、実施形態の開示は、以下の請求項に記載される、特許権の範囲を限定するものではなく、例示することを意図している。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10A
図10B
図11
図12
図13A
図13B
図13C
図14A
図14B
図15
図16
図17
図18
図19
図20
図21
図22
図23