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

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

▶ ハーマン ベッカー オートモーティブ システムズ ゲーエムベーハーの特許一覧

特許7636863組み込みアーキテクチャの中の同期マルチチャネルループバック
<>
  • 特許-組み込みアーキテクチャの中の同期マルチチャネルループバック 図1
  • 特許-組み込みアーキテクチャの中の同期マルチチャネルループバック 図2
  • 特許-組み込みアーキテクチャの中の同期マルチチャネルループバック 図3
  • 特許-組み込みアーキテクチャの中の同期マルチチャネルループバック 図4
  • 特許-組み込みアーキテクチャの中の同期マルチチャネルループバック 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-02-18
(45)【発行日】2025-02-27
(54)【発明の名称】組み込みアーキテクチャの中の同期マルチチャネルループバック
(51)【国際特許分類】
   G10K 15/00 20060101AFI20250219BHJP
   G06F 3/16 20060101ALI20250219BHJP
   G10K 11/178 20060101ALI20250219BHJP
   H04R 3/00 20060101ALN20250219BHJP
   H04R 3/02 20060101ALN20250219BHJP
【FI】
G10K15/00 L
G06F3/16 500
G10K11/178
H04R3/00 320
H04R3/02
【請求項の数】 20
【外国語出願】
(21)【出願番号】P 2020013268
(22)【出願日】2020-01-30
(65)【公開番号】P2020126237
(43)【公開日】2020-08-20
【審査請求日】2023-01-05
(31)【優先権主張番号】62/799,338
(32)【優先日】2019-01-31
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】16/773,474
(32)【優先日】2020-01-27
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】504147933
【氏名又は名称】ハーマン ベッカー オートモーティブ システムズ ゲーエムベーハー
(74)【代理人】
【識別番号】100078282
【弁理士】
【氏名又は名称】山本 秀策
(74)【代理人】
【識別番号】100113413
【弁理士】
【氏名又は名称】森下 夏樹
(72)【発明者】
【氏名】ユルゲン ハインリヒ ゾールナー
【審査官】川▲崎▼ 博章
(56)【参考文献】
【文献】特表2016-516343(JP,A)
【文献】特開2004-364092(JP,A)
【文献】特開2010-263567(JP,A)
【文献】FREIBERGER,Karl, HUBER,Stefan, MEERWALD,Peter,Multi-Channel Noise/Echo Reduction in PulseAudio on Embedded Linux,SEMANTIC SCHOLAR,オーストリア,SEMANTIC SCHOLAR,2013年,検索日[2024.2.28],URL:<https://www.semanticscholar.org/pape/Multi-Channel-Noise-Echo-Reduction-in-PulseAudio-on-Freiberger/32e5377659b5a79bac209e882ec613cef6d20654>
(58)【調査した分野】(Int.Cl.,DB名)
G10K 15/00
G06F 3/16
G10K 11/178
H04R 3/00
H04R 3/02
(57)【特許請求の範囲】
【請求項1】
音声処理装置用の組み込みLinux(登録商標)システムであって、前記システムは、
メモリと、
前記メモリを含むシステムオンチップ(SoC)デバイスであって、前記SoCデバイスは、前記Linux(登録商標)システムの1つ以上のソフトウェアレイヤを実行することと、不要な音声コンテンツを示す基準信号と、リスニング環境で測定された音声データを示す測定信号とを少なくとも処理することとを行うようにプログラムされる、SoCデバイスと、
第1の回路であって、前記第1の回路は、
前記基準信号を受信することと、
測定信号を受信することと、
前記基準信号を前記測定信号とマージして、組み合わされたシステム入力を前記Linux(登録商標)システムの前記1つ以上のソフトウェアレイヤに提供し、前記基準信号と前記測定信号との間の一時的な不整合を緩和するようにすることと
を行うようにプログラムされる、第1の回路と
を備える、システム。
【請求項2】
前記第1の回路に前記基準信号を送信するようにプログラムされるミキサーをさらに備える、請求項1に記載のシステム。
【請求項3】
前記第1の回路に前記基準信号を送信するようにプログラムされる入力センサをさらに備える、請求項1に記載のシステム。
【請求項4】
前記第1の回路に前記測定信号を送信するようにプログラムされる入力センサをさらに備える、請求項1に記載のシステム。
【請求項5】
前記入力センサが、マイクまたは加速度センサのうちの1つである、請求項4に記載のシステム。
【請求項6】
前記第1の回路が、前記組み合わされたシステム入力が前記Linux(登録商標)システムの前記1つ以上のソフトウェアレイヤに送信される前に、前記基準信号を前記測定信号とマージするようにさらにプログラムされる、請求項1に記載のシステム。
【請求項7】
前記1つ以上のソフトウェアレイヤの第1のソフトウェアレイヤが、少なくとも1つの音声ベースのカーネルを含み、
前記少なくとも1つの音声ベースのカーネルが、サウンドドライバを含み、
前記1つ以上のソフトウェアレイヤの第2のソフトウェアレイヤが、音声ベースのライブラリを含み、
前記1つ以上のソフトウェアレイヤの第3のソフトウェアレイヤが、サウンドカードを管理するサウンドサーバを含む、
請求項1に記載のシステム。
【請求項8】
前記第1の回路が、複数のN個の音声ベースのチャネルとして前記基準信号を受信するようにさらにプログラムされる、請求項1に記載のシステム。
【請求項9】
前記第1の回路が、複数のM個の音声ベースのチャネルとして前記測定信号を受信するようにさらにプログラムされる、請求項8に記載のシステム。
【請求項10】
前記第1の回路が、前記基準信号を前記測定信号とマージしてM+N個の音声ベースのチャネルを生成し、時分割多重化(TDM)データストリームを形成するようにさらにプログラムされる、請求項9に記載のシステム。
【請求項11】
プログラムが記憶された記憶媒体であって、前記プログラムは、プロセッサによって実行されると、前記プロセッサに、組み込みLinux(登録商標)システムのために基準信号と測定信号との間の一時的な不整合を緩和する方法を実行させ、前記方法は、
不要な音声コンテンツを示す前記基準信号を受信することと、
リスニング環境で測定された音声データを示す前記測定信号を受信することと、
システムオンチップ(SoC)デバイスで前記基準信号及び前記測定信号を処理することであって、前記SoCデバイスは、前記Linux(登録商標)システムの1つ以上のソフトウェアレイヤを実行する、ことと、
前記基準信号を前記測定信号とマージして、組み合わされたシステム入力を前記Linux(登録商標)システムの前記1つ以上のソフトウェアレイヤに提供し、前記基準信号と前記測定信号との間の一時的な不整合を緩和するようにすることと
含む記憶媒体
【請求項12】
前記方法は、ミキサーを介して第1の回路に前記基準信号を送信することをさらに含む、請求項11に記載の記憶媒体
【請求項13】
前記方法は、入力センサを介して第1の回路に前記基準信号を送信することをさらに含む、請求項11に記載の記憶媒体
【請求項14】
前記方法は、第1の回路に前記測定信号を送信することをさらに含む、請求項11に記載の記憶媒体
【請求項15】
前記方法は、
前記組み合わされたシステム入力が前記Linux(登録商標)システムの前記1つ以上のソフトウェアレイヤに送信される前に、前記基準信号を前記測定信号とマージすることをさらに含む、請求項11に記載の記憶媒体
【請求項16】
前記1つ以上のソフトウェアレイヤの第1のソフトウェアレイヤが、少なくとも1つの音声ベースのカーネルを含み、
前記少なくとも1つの音声ベースのカーネルが、サウンドドライバを含み、
前記1つ以上のソフトウェアレイヤの第2のソフトウェアレイヤが、音声ベースのライブラリを含み、
前記1つ以上のソフトウェアレイヤの第3のソフトウェアレイヤが、サウンドカードを管理するサウンドサーバを含む、
請求項11に記載の記憶媒体
【請求項17】
前記方法は、複数のN個の音声ベースのチャネルとして前記基準信号を受信することをさらに含む、請求項11に記載の記憶媒体
【請求項18】
前記方法は、複数のM個の音声ベースのチャネルとして前記測定信号を受信することをさらに含む、請求項17に記載の記憶媒体
【請求項19】
前記方法は、
前記基準信号を前記測定信号とパックまたは追加/マージしてM+N個の音声ベースのチャネルを生成し、時分割多重化(TDM)データストリームを形成することをさらに含む、請求項18に記載の記憶媒体
【請求項20】
プログラムが記憶された記憶媒体であって、前記プログラムは、プロセッサによって実行されると、前記プロセッサに、組み込みLinux(登録商標)システムのために基準信号と測定信号との間の一時的な不整合を緩和する方法を実行させ、前記方法は、
適応制御システムのための出力データを示す前記基準信号を受信することと、
前記測定信号を受信することと、
システムオンチップ(SoC)デバイスで前記基準信号及び前記測定信号を処理することであって、前記SoCデバイスは、前記Linux(登録商標)システムの1つ以上のソフトウェアレイヤを実行する、ことと、
前記基準信号を前記測定信号とマージして、組み合わされたシステム入力を前記Linux(登録商標)システムの前記1つ以上のソフトウェアレイヤに提供し、前記基準信号と前記測定信号との間の一時的な不整合を緩和するようにすることと
含む記憶媒体
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本願は、その開示が全体として本明細書に参照により援用される、2019年1月31日に出願された米国仮特許出願第62/799,338号の利益を主張する。
【0002】
本明細書に開示される態様は、概して組み込みアーキテクチャの中の同期マルチチャネルループバックに関する。これらの態様及び他を以下により詳細に説明する。
【背景技術】
【0003】
データシステムに適用されるバッファは不変ではないので、しばしば、組み込みシステムにおける(例えば、Linux(登録商標)オペレーティングシステムにおける)処理はリアルタイムではない。係るバッファは、メモリ使用量及びシステム負荷のため、経時的に変化する場合がある。この動きは、携帯電話で広く使用されるそれらの一般向けで汎用のシステムオンチップ(SoC)システムを、例えば音響エコーキャンセレーション(AEC)アルゴリズム等の高度なアルゴリズムにほとんど使用不可能にする。この状況により、高価なコンパニオンチップのニーズも高まる。
【発明の概要】
【課題を解決するための手段】
【0004】
少なくとも一実施形態では、組み込みLinux(登録商標)システムが提供される。Linux(登録商標)システムは、メモリ、システムオンチップ(SoC)デバイス、及び第1の回路を含む。SoCデバイスはメモリを含み、不要な音声コンテンツを示す基準信号と、リスニング環境で測定された音声データを示す測定信号とを少なくとも処理するようにプログラムされる。第1の回路は、基準信号及び測定信号を受信するようにプログラムされる。第1の回路は、基準信号を測定信号とマージして、組み合わされたシステム入力をSoCデバイスに提供し、Linux(登録商標)システムの1つ以上のソフトウェアレイヤによって引き起こされる基準信号と測定信号との間の一時的な不整合を防ぐようにさらにプログラムされる。
【0005】
少なくとも1つの別の実施形態では、組み込みLinux(登録商標)システムのために基準信号と測定信号との間の一時的な不整合を防ぐようにプログラムされる非一過性コンピュータ可読媒体で実施されるコンピュータプログラム製品が提供される。コンピュータプログラム製品は、不要な音声コンテンツを示す基準信号を受信し、リスニング環境で測定された音声データを示す測定信号を受信する命令を含む。コンピュータプログラム製品は、システムオンチップ(SoC)デバイスで基準信号及び測定信号を処理し、基準信号を測定信号とマージして、組み合わされたシステムデータストリームをSoCデバイスに提供し、Linux(登録商標)システムの1つ以上のソフトウェアレイヤによって引き起こされる基準信号と測定信号との間の一時的な不整合を防ぐ命令を含む。
【0006】
少なくとも1つの別の実施形態では、組み込みLinux(登録商標)システムのために基準信号と測定信号との間の一時的な不整合を防ぐようにプログラムされる非一過性コンピュータ可読媒体で実施されるコンピュータプログラム製品が提供される。コンピュータプログラム製品は、適応制御システムのための出力データを示す基準信号を受信する命令を含む。コンピュータプログラム製品は、システムオンチップ(SoC)デバイスで基準信号及び測定信号を処理し、基準信号を測定信号とマージして、組み合わされたシステムデータストリームをSoCデバイスに提供し、Linux(登録商標)システムの1つ以上のソフトウェアレイヤによって引き起こされる基準信号と測定信号との間の一時的な不整合を防ぐ命令を含む。
例えば、本願は以下の項目を提供する。
(項目1)
音声処理装置用の組み込みLinux(登録商標)システムであって、
メモリと、
上記メモリを含み、不要な音声コンテンツを示す基準信号と、リスニング環境で測定された音声データを示す測定信号とを少なくとも処理するようにプログラムされるシステムオンチップ(SoC)デバイスと、
第1の回路であって、
上記基準信号を受信すること、
上記測定信号を受信すること、
上記基準信号を上記測定信号とマージして、組み合わされたシステム入力を上記SoCデバイスに提供し、上記Linux(登録商標)システムの1つ以上のソフトウェアレイヤによって引き起こされる上記基準信号と上記測定信号との間の一時的な不整合を防ぐこと、
を行うようにプログラムされる、上記第1の回路と、
を備える、上記システム。
(項目2)
上記第1の回路に上記基準信号を送信するようにプログラムされるミキサーをさらに備える、上記項目に記載のシステム。
(項目3)
上記第1の回路に上記基準信号を送信するようにプログラムされる入力センサをさらに備える、上記項目のいずれか一項に記載のシステム。
(項目4)
上記第1の回路に上記測定信号を送信するようにプログラムされる入力センサをさらに備える、上記項目のいずれか一項に記載のシステム。
(項目5)
上記入力センサが、マイクまたは加速度センサのうちの1つである、上記項目のいずれか一項に記載のシステム。
(項目6)
上記第1の回路が、上記組み合わされたシステム入力が上記Linux(登録商標)システムの上記1つ以上のソフトウェアレイヤに送信される前に、上記基準信号を上記測定信号とマージするようにさらにプログラムされる、上記項目のいずれか一項に記載のシステム。
(項目7)
上記1つ以上のソフトウェアレイヤの第1のソフトウェアレイヤが、少なくとも1つの音声ベースのカーネルを含み、
上記少なくとも1つの音声ベースのカーネルが、サウンドドライバを含み、
上記1つ以上のソフトウェアレイヤの第2のソフトウェアレイヤが、音声ベースのライブラリを含み、
上記1つ以上のソフトウェアレイヤの第3のソフトウェアレイヤが、サウンドカードを管理するサウンドサーバを含む、
上記項目のいずれか一項に記載のシステム。
(項目8)
上記第1の回路が、複数のN個の音声ベースのチャネルとして上記基準信号を受信するようにさらにプログラムされる、上記項目のいずれか一項に記載のシステム。
(項目9)
上記第1の回路が、複数のM個の音声ベースのチャネルとして上記測定信号を受信するようにさらにプログラムされる、上記項目のいずれか一項に記載のシステム。
(項目10)
上記第1の回路が、上記基準信号を上記測定信号とマージしてM+N個の音声ベースのチャネルを生成し、時分割多重化(TDM)データストリームを形成するようにさらにプログラムされる、上記項目のいずれか一項に記載のシステム。
(項目11)
組み込みLinux(登録商標)システムのために基準信号と測定信号との間の一時的な不整合を防ぐようにプログラムされる非一過性コンピュータ可読媒体で実施されるコンピュータプログラム製品であって、
不要な音声コンテンツを示す上記基準信号を受信し、
リスニング環境で測定された音声データを示す上記測定信号を受信し、
システムオンチップ(SoC)デバイスで上記基準信号及び上記測定信号を処理し、
上記基準信号を上記測定信号とマージして、組み合わされたシステム入力を上記SoCデバイスに提供し、上記Linux(登録商標)システムの1つ以上のソフトウェアレイヤによって引き起こされる上記基準信号と上記測定信号との間の一時的な不整合を防ぐ、
命令を備える、上記コンピュータプログラム製品。
(項目12)
ミキサーを介して第1の回路に上記基準信号を送信する命令をさらに備える、上記項目に記載のコンピュータプログラム製品。
(項目13)
入力センサを介して第1の回路に上記基準信号を送信する命令をさらに備える、上記項目のいずれか一項に記載のコンピュータプログラム製品。
(項目14)
第1の回路に上記測定信号を送信する命令をさらに備える、上記項目のいずれか一項に記載のコンピュータプログラム製品。
(項目15)
上記組み合わされたシステム入力が上記Linux(登録商標)システムの上記1つ以上のソフトウェアレイヤに送信される前に、上記基準信号を上記測定信号とマージする命令をさらに備える、上記項目のいずれか一項に記載のコンピュータプログラム製品。
(項目16)
上記1つ以上のソフトウェアレイヤの第1のソフトウェアレイヤが、少なくとも1つの音声ベースのカーネルを含み、
上記少なくとも1つの音声ベースのカーネルが、サウンドドライバを含み、
上記1つ以上のソフトウェアレイヤの第2のソフトウェアレイヤが、音声ベースのライブラリを含み、
上記1つ以上のソフトウェアレイヤの第3のソフトウェアレイヤが、サウンドカードを管理するサウンドサーバを含む、
上記項目のいずれか一項に記載のコンピュータプログラム製品。
(項目17)
複数のN個の音声ベースのチャネルとして上記基準信号を受信する命令をさらに備える、上記項目のいずれか一項に記載のコンピュータプログラム製品。
(項目18)
複数のM個の音声ベースのチャネルとして上記測定信号を受信する命令をさらに備える、上記項目のいずれか一項に記載のコンピュータプログラム製品。
(項目19)
上記基準信号を上記測定信号とパックまたは追加/マージしてM+N個の音声ベースのチャネルを生成し、時分割多重化(TDM)データストリームを形成する命令をさらに備える、上記項目のいずれか一項に記載のコンピュータプログラム製品。
(項目20)
組み込みLinux(登録商標)システムのために基準信号と測定信号との間の一時的な不整合を防ぐようにプログラムされる非一過性コンピュータ可読媒体で実施されるコンピュータプログラム製品であって、
適応制御システムのための出力データを示す上記基準信号を受信し、
上記測定信号を受信し、
システムオンチップ(SoC)デバイスで上記基準信号及び上記測定信号を処理し、
上記基準信号を上記測定信号とマージして、組み合わされたシステム入力を上記SoCデバイスに提供し、上記Linux(登録商標)システムの1つ以上のソフトウェアレイヤによって引き起こされる上記基準信号と上記測定信号との間の一時的な不整合を防ぐ、
命令をさらに備える、上記コンピュータプログラム製品。
(摘要)
少なくとも1つの実施形態において、組み込みLinux(登録商標)システムを提供する。Linux(登録商標)システムは、メモリ、システムオンチップ(SoC)デバイス、および第1の回路を備える。このSoCデバイスは、メモリを含み、不要なオーディオコンテンツを示す少なくとも1つの基準信号と、リスニング環境で測定音声データを示す測定信号を処理するようにプログラムされる。第1の回路は、基準信号と、測定信号を受信するようにプログラムされる。第1の回路は、基準信号を測定信号とマージして、組み合わされたシステム入力をSoCデバイスに提供し、基準信号と測定信号との間の一時的な不整合がLinux(登録商標)システムの1つ以上のソフトウェアレイヤによって引き起こされることを防ぐようにさらにプログラムされる。
【図面の簡単な説明】
【0007】
本開示の実施形態は、添付の特許請求の範囲において詳細に示される。しかしながら、多様な実施形態の他の特徴は、添付図面と併せて以下の発明を実施するための形態を参照することによってより明らかになり、最もよく理解される。
【0008】
図1】組み込み適応制御システムの例を示す。
図2】一実施形態に係る閉ループ制御の実施態様の高度な実施態様を示す。
図3】一実施形態に係る組み込み適応制御システムを示す。
図4】一実施形態に係る音響エコーキャンセラ/キャンセレーションに関連して使用される適応制御システムの詳細な実施態様の例を示す。
図5】一実施形態に係るアクティブノイズキャンセレーションに関連して使用される適応制御システムの詳細な実施態様の例を示す。
【発明を実施するための形態】
【0009】
本発明の発明を実施するための形態を、必要に応じて本明細書に開示する。しかし、開示する実施形態が、多様な形式及び代替形式で実施され得る本発明の例示にすぎないことを理解するべきである。図は必ずしも原寸に比例していない。特定の構成要素の詳細を示すために、一部の特徴を誇張するまたは最小限に抑える場合がある。したがって、本明細書に開示する具体的な構造上の詳細及び機能上の詳細は、制限的なものとして解釈するべきではなく、単に本発明を多様に利用するために当業者を指導するための代表的な根拠として解釈するべきである。
【0010】
本明細書に開示するサーバ、コントローラ、及びクライアント等の多様な電気装置が、多様なマイクロプロセッサ、集積回路、メモリデバイス(例えば、FLASH、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、電気的プログラマブル読み取り専用メモリ(EPROM)、電気的消去可能PROM(EEPROM)、または他のその適切な変形)、及び互いに共同して本明細書に開示する動作(複数可)を実行するソフトウェアを含んでよいことが認識される。さらに、これらの電気装置は、開示する任意の数の機能を実行するようにプログラムされる非一過性コンピュータ可読媒体で実施されるコンピュータプログラムを実行するために1つ以上のマイクロプロセッサを利用する。さらに、本明細書で提供される多様な電気装置は、ハウジング、及び多様な数のマイクロプロセッサ、集積回路、ハウジングの中に配置されるメモリデバイス(例えば、FLASH、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、電気的プログラマブル読み取り専用メモリ(EPROM)、電気的消去可能PROM(EEPROM))を含む。また、電気装置は、それぞれ本明細書に説明する他のハードウェアベースのデバイスからデータを受信し、他のハードウェアベースのデバイスへデータを送信するためのハードウェアベースの入力及び出力も含む。
【0011】
概して、本明細書に開示する実施形態は、とりわけ、例えば多くの高度アルゴリズムの実現可能性を与えるLinux(登録商標)オペレーティングシステムに関連して使用し得る同期した基準測定組み込み入力信号アーキテクチャ及び測定組み込み入力信号アーキテクチャを提供する。アーキテクチャは信頼性があり、任意の数の適応制御戦略のために実装され得る。Linux(登録商標)オペレーティングシステムは、任意の数の音声処理装置のために使用され得る。例えば、アーキテクチャは、例えば音響エコーキャンセラまたはキャンセレーション(AEC)アプリケーション、アクティブノイズキャンセレーション(ANC)システム、任意の他の適切な音声ベースのアプリケーション、または一般的に、同期した相対的な基準信号及び測定信号を必要とする任意の制御アプリケーションに関連するが、これに限定されない同期した基準信号及び測定信号を利用してよい。示したエンハンスメント(またはアーキテクチャ)は、エンドツーエンドレイテンシが動的に変化する場合がある一方で、簡素であり得、基準信号と測定信号との間の相対的な同期設計を提供する低コストの方法をもたらし得る信号調整回路を利用してよい。本明細書に説明する実施形態が、音声システムを含まない任意のシステムに適用され得、それにより、例えばエラーを最小限に抑えるために相対的な同期した基準信号及び測定信号を利用することによって制御ターゲットを達成することが所望されることが認識される。
【0012】
図1は、組み込み適応制御システム100の例を示す。適応制御システム100は、例えば組み込みLinux(登録商標)オペレーティングシステム(OS)101で実装されてよい。システム100がLinux(登録商標)カーネル(例えば、OSのコア)及び関係するサポートツール及びライブラリを含んでよいことが認識される。システム100は、概してアプリケーションレイヤ102、サーバ(もしくはサーバレイヤ)104、サウンドサブシステムレイヤ106、または例えば拡張Linux(登録商標)サウンドアーキテクチャ(ALSA)ライブラリレイヤ106もしくはオープンサウンドシステム(OSS)ライブラリレイヤ106、カーネル(もしくはドライバ)レイヤ(例えば、ALSAカーネル/ドライバもしくはOSSカーネル/ドライバ)108、及びハードウェアレイヤ110を含む。アプリケーションレイヤ102、サーバ104、サウンドサブシステムレイヤ106、カーネルレイヤ108、及びハードウェアレイヤ110は、少なくとも1つのシステムオンチップ(SoC)デバイス111を形成してよい。SoCデバイス111は、その中のすべての関連付けられた構成要素を統合する集積回路であってよい。SoCデバイス111が、中央演算処理装置(CPU)、メモリ113、入力/出力ポート、及び/または単一の基板またはマイクロチップ上にパッケージされ得る二次記憶装置を含んでよいことが認識される。また、SoCデバイス111は、デジタル信号処理装置、アナログ信号処理装置、及び/または混合信号処理装置を含んでもよい。SoCデバイス111は、Linux(登録商標)組み込みシステムの一部であってよい。
【0013】
システム100が、アプリケーションレイヤ102、サーバレイヤ104、サウンドサブシステムレイヤ106、及びカーネル(またはドライバ)レイヤ108によって実行されるありとあらゆるタスクを行う命令を実行するための少なくとも1つのコントローラ112(以後、コントローラ112)をさらに含むことが認識される。さらに、コントローラ112は、データをハードウェアレイヤ110から受信されたとして処理するために、またはデータをハードウェアレイヤ110に送信するためにハードウェアレイヤ110と連動してよい。
【0014】
制御システム100が、任意の適応制御の実施態様(または閉ループ制御戦略)で利用されてよいことが認識される。例えば、図2は、閉ループ戦略を利用する制御手段200を示す。制御手段200は、信号調整回路201(つまり第1の回路201)、コントローラ202、コントローラ202の制御下にあるシステムまたはプラント204(以後「プラント204」)、及びセンサ206を含む。信号調整回路201は、基準信号をシステム/プラント入力信号から分離するためのミキサー203、及び基準信号を測定信号と組み合わせてコントローラ入力信号を提供するためのパック回路209を含んでよい。本明細書の任意の信号に対するすべての参照が、単数または複数(例えば、各それぞれの入力及び出力のための任意の数の信号)であってよいことが認識される。基準信号は、ミキサー203を介して信号調整回路201に提供されてよく、システム/プラント入力信号によって、または信号調整回路201への別個の入力によって分離されてよい。基準信号は、図1に関連して示すハードウェアレイヤ110から以前に出力された音声出力データに直接的に対応してよい。これをループバック機構と称してもよい。基準信号は、任意の数の音声チャネルMで提供されるデータを含んでよい。基準信号は、ユーザーにとって不要と判断される音声データに相当する場合がある。また、測定信号は、信号調整回路201に提供されてもよい。測定信号は、例えばセンサ206(例えば、マイク)から送信される音声データに相当する場合がある。センサ206は、プラント204からのプラント出力信号としても定義されるプラント204からの測定出力に相当する測定信号を生成する。この場合、測定信号は、プラント入力信号またはコントローラ出力信号上の音声に相当してよい。測定信号は、ユーザーがリスニング環境で聞く実際の音声を含んでよい。測定信号は、任意の数の音声チャネル、Nを含んでよい。コントローラ202は、例えばセンサ206(つまりマイク)からの基準信号及び測定信号の同期組み合わせであるコントローラ入力信号を受信する。アナログデジタルコンバータは、センサ206と信号調整回路201との間に配置されてよいことが認識される。一般的には、パック回路209は、測定信号と基準信号との間でデータをマージしてよい。一例では、マージ動作は、パック回路209が、測定信号を加算または基準信号から減算して、コントローラ202に対して組み合わされたコントローラ入力信号を提供することに相当してよい。基準信号は、測定信号に重畳されるので、コントローラ入力信号は、M個のチャネルの形をとってよい。代わりに、マージ動作は、パック回路209が測定信号を基準信号と結合(またはパック)してコントローラ入力信号を提供することに相当してよい。しかしながら、基準信号及び測定信号は、コントローラ入力信号の個々のスロットの中にパックされるので、パック動作の結果として、コントローラ入力信号は、M+N個のチャネルの形をとる場合がある。例えば、コントローラ入力信号は、時分割多重化(TDM)データストリームを提供するM+N個の音声ベースのチャネルを形成してよく、測定信号からのM個の音声ベースのチャネル及び基準信号からのN個の音声ベースのチャネルでパックされる。一般的には、信号調整回路201は、基準信号上のデータと測定信号上のデータとの間の一時的な不整合を防ぐために、基準信号上のデータを測定信号上のデータとマージして、SoCデバイス111に対して組み合わされたシステムデータストリームを提供するように構成される。係る一時的な不整合は、制御手段200の動作中にレイヤ102、104、106、及び108のうちの1つ以上によって引き起こされる場合がある。この態様を以下により詳細に説明する。
【0015】
上述されるように、本明細書における実施形態を、オーディオシステムを含まない、いずれかのシステムに適用することができることにより、Linux(登録商標)システムの1つ以上のソフトウェアレイヤを通して伝播する2つの信号間の一時的な不整合を減少させることが望ましい。適応制御システムにおいて、基準信号は、ループバック機構を利用するプラントへの入力データに単純に対応することができる。測定信号は、適応制御システム中のセンサによって提供されるようなデータに対応することができ、このセンサは、ある形式のフィードバック情報を提供する。したがって、この場合、信号調整回路201は、基準信号上のデータを測定信号上のデータとマージすることができる。これらの信号間でデータをマージした後に、この信号調整回路201は、組み合わされたシステムデータストリームをSoCデバイス111に提供し、基準信号上のデータと、測定信号上のデータとの間の一時的な不整合を防ぐ。一時的な不整合は一般的に、ソフトウェアレイヤ102、104、106、および108のうちの1つ以上によって引き起こされ得る。この態様は、制御目標を、例えば、相対的に同期した基準信号および測定信号を利用するエラーを最小限にすることによって達成することができる。本明細書に記載されるような実装がオーディオ関連の目的のためにのみ使用されるのではなく、Linux(登録商標)システムのソフトウェアレイヤを通じて伝播する2つの信号間の一時的な不整合を解決しようとする、または減少させようとする、任意のシステムのために使用され得ることが認識されている。
【0016】
コントローラ202は、適応制御戦略を用いて、このプロセスを測定信号および基準信号に基づき繰り返して実行し、所望の方式において制御手段200をプラント204に向けて適合させる。しかしながら、固有のシステムエラーが原因で、または一貫性がないことが原因で、コントローラ202がプラント204を制御して所望の結果を達成することが完全にはできない場合があることが認識されている。上述されている適応制御手段200は、何度でも実行されることができ、基準信号と測定信号との間で少なくとも比較的安定したレイテンシおよびタイミングを必要とする場合がある最適な方式における制御アクションを提供し、コントローラ202による制御下でプラント204について制御安定性および最適なパフォーマンスを確保することができる。例えば、図1に示される実施例などのLinux(登録商標)システム101において配信されるような、測定信号と基準信号との間のいかなる動的な時間/レイテンシ不整合問題も、コントローラ202(または図1に示されるようなコントローラ112)にパフォーマンスを低下させる、または不安定さえも引き起こす場合がある。しかしながら、固有のシステム(もしくはプラント)エラーが原因で、または一貫性がないことが原因で、コントローラ202がプラント204を制御して所望の結果を達成することが完全にはできない場合があることが認識されている。
【0017】
図1に戻り参照して、アプリケーションレイヤ102は、例えば、音楽の再生ができるオーディオクライアントおよび関連したユーザプログラムを一般的に含む。これらのオーディオクライアントは、サウンドサーバにオーディオストリームを介して接続することができる。サーバレイヤ104(またはサウンドサーバ)は、ソフトウェアであることができ、オーディオデバイス、例えば、サウンドカードの使用、およびこれらへのアクセスを管理する。サーバレイヤ104は、シンクおよびソースハンドリングのためのバックグラウンドプロセスとして一般に実行することができる。サーバレイヤ104は、PulseAudio、または例えばJACKなどのオーディオ接続キットとして実装されることができる。PulseAudioは、一般的にさまざまなオペレーティングシステムのためのサウンドシステムである。PulseAudioは、サウンドアプリケーション用のプロキシとして一般的に機能する。サーバレイヤ104をPulseAudioのために実装する場合、PulseAudioが例えば、カーネルレイヤ108(またはASLAレイヤ)などの下位ソフトウェアレイヤに接続するUBUNTUディストリビューションに利用されるサウンドサーバであり得ることが認識されている。PulseAudioは、サーバ/クライアント接続性をアプリケーションレイヤ102内に提供する。JACKをいずれかの数のLinux(登録商標)アプリケーション中に含むことができる。
【0018】
サウンドシステムレイヤ106は、実装のために利用されるのがALSAか、OSSかに基づきALSAおよびOSS用のライブラリを提供するソフトウェアを一般的に含む。カーネルまたはドライバレイヤ108は、サウンドドライバおよびサウンドデバイスを含むことができる。ALSAに関連するカーネルレイヤ108を利用する場合、ALSAカーネルレイヤ108は、マルチチャネルオーディオインタフェースをサポートし、ハードウェア制御を管理することについてアプリケーションプログラムインタフェース(API)アクセスを提供することができる。ALSAは、マルチプロセッサLinux(登録商標)ベースの組み込みシステム内の標準ソフトウェアレイヤであり、オーディオ-ハードウェア周辺機器と上位アプリケーションレイヤとの間のバッファハンドリングを備える、すべてのオーディオストリームおよびストリームミキシングを管理することができる。OSSに関連するカーネルレイヤ108を利用する場合、OSSカーネルレイヤ108は、Linux(登録商標)カーネルサウンドドライバおよびサウンドデバイスを含み、アプリケーションレイヤ102を実際のオーディオ-ハードウェア周辺機器と接続する。
【0019】
さらに、システム100は、入力信号をハードウェアレイヤ110に提供するハードウェアベースの入力デバイス(複数可)120を含む。入力デバイス120は、マイク、加速度センサなどのような、いずれかの数のセンサを含むことができる。さらに、システム100は、出力信号をハードウェアレイヤ110から受信するハードウェアベースの出力デバイス122を含む。1つの実施例において、ハードウェアベースの出力デバイス122は、音響エコーキャンセラ(AEC)、アクティブノイズキャンセラ(ANC)システムなどのような1つのオーディオシステムについて少なくとも1つのコントローラを含むことができる。概して、システム100が入力信号を入力デバイス120から受信し、入力信号がハードウェアレイヤ110、カーネルレイヤ108、サウンド-サブシステムレイヤ106、およびサーバレイヤ104を介してそのまま伝播する場合に、これらのようなレイヤ102、104、106、および108を実行するコントローラ112、サウンド-サブシステムレイヤ106、ならびにサーバレイヤ104によって実行される処理は、システム100によって処理されるデータの、異なる別々の入力ストリームに関するレイテンシ問題を引き起こす可能性がある。
【0020】
一般に、アプリケーションレイヤ102は、互いに独立して基準信号および測定信号を利用することができるコントローラユニット124を含む。例えば、基準信号および測定信号は、互いに、個々の、かつ別々のデータをそれぞれ含む(例えば、各信号間のデータは、合わせてパックされる、または追加される(すなわち、合わせてマージされる))。例えば、コントローラユニット124への入力は、センサ206によって提供されるような測定信号、および図2に記載されるような基準信号の信号に一般的に対応する。しかしながら、この場合、システム100は、図2に記載されるような信号調整回路201を用いない。この場合、システム100は、基準信号および測定信号を別々のデータストリームとしてバッファリングする。したがって、図1における測定信号および基準信号の個々のバッファリング(すなわち、動的バッファサイズ変更)により、さまざまなレイヤ102、104、106、および108において、これらの個々の信号を互いに、不整合にさせる、または非同期にさせる可能性がある。レイヤ110は、ハードウェアベースであることができるが、このレイヤ110は、基準信号と測定信号との間のレイテンシ問題に加わらない場合がある。
【0021】
しかしながら、信号コントローラ出力またはプラント入力についてのデータストリームはレイヤ102、104、106、108および110によってダウンストリーム方式において処理されること、そしてこのような信号がアップストリーム処理のために基準信号として完全に、または部分的にループバックされることができることに留意されたい。さらに、レイヤ102、104、106、および108が測定信号および基準信号をアップストリーム方式において処理することに留意されたい。基準信号が信号コントローラ出力またはプラント入力に基づくことができると仮定すると、これは、上述されるように不整合または非同期に加えられる場合がある。概して、ハードウェアレイヤ110は、プログラマブルサブユニットを含むことができ、Linux(登録商標)システムにおけるハードウェアとして一般的に定義される。上述されるレイテンシにより、ハードウェアレイヤ110がプログラム可能であるが、決定論的で、静的であることを引き起こすことができる。レイヤ106より上のすべてのレイヤに加えてカーネルレイヤ108は、ソフトウェアベースのレイヤであることができ、これらのようなレイヤ102、104、106、108に帰するレイテンシは、動的であり、静的(またはこれらのようなレイヤ102、104、106、108内のオペレーティングシステム(OS)セットアップに起因する決定論的)ではないと仮定され得る。
【0022】
概して、ハードウェアベースの入力デバイス120によって提供されるデータは、デジタルであることができる。ハードウェアベースの入力デバイス120は、いずれかの数のアナログ-デジタル変換器を含み、例えばANCが基準信号をも提供する場合に、デジタルデータを測定信号上に、またいくつかのコントローラアプリケーション内に提供することができ、本明細書のように、基準信号は、信号コントローラ出力またはプラント入力から逸脱しないが、信号調整回路201が基準信号および測定信号を合わせて、組み合わされた信号コントローラ入力中に加え、またはパックし、その信号をさまざまなレイヤ110、108、106、および104のアップストリームへ処理するために転送することを依然として必要とする(例えば、図5を参照されたい)。同様に、ハードウェアベースの出力デバイス122から送信されるデータは、デジタルであることができる。ハードウェアベースの出力デバイス122は、いずれかの数のデジタル-アナログ変換器(DAC)を含み、デジタルデータを変換してアナログデータに戻すことができる。
【0023】
図3は、1つの実施形態に従い、組み込み適応制御システム100’を示す。システム100’がモバイルデバイス(図示せず)、例えば携帯電話、ラップトップ、タブレットなどに(またはセルラー通信を可能にするいずれかの他のデバイスに)実装され得ることが認識されている。システム100’は、モバイルデバイスのオーディオ処理デバイスに実装されることができる。このシステム100は、ハードウェアレイヤ110に対して、またハードウェアベースの入力デバイス(複数可)120およびハードウェアベースの出力デバイス(複数可)122に対して、中間に置かれている信号調整回路201を一般的に含む。上述されるように、入力デバイス(複数可)120は、リスニング環境から測定音声データ(例えば、図2からの測定信号を参照する)を提供する、マイクロまたは加速度センサに対応することができる。また上述されるように、ハードウェアベースの出力デバイス122は、信号コントローラ出力またはプラント入力上のデジタルデータをアナログデータに変換するために、そして同じものを室内で、またはリスニング環境で任意のラウドスピーカーに提供するために、いずれかの数のD/A変換器に加えてパワーアンプを含むことができる。上述されるように、基準信号は、信号コントローラ出力またはプラント入力に完全に、または部分的に対応することができる。加えて、ハードウェアベースの出力デバイス122はまた、音響エコーキャンセラ(AEC)、アクティブノイズキャンセラ(ANC)システムなどのようなオーディオシステムのために少なくとも1つのコントローラを含むことができる。信号調整回路201は、フィールドプログラマブルゲートアレイ(FGPA)、特定用途向け集積回路(ASIC)、デジタル信号プロセッサ(DSP)などであることができる。図2の信号調整回路201と同様に、図3に示されるような信号調整回路201はまた、ミキサー203およびパック回路209を含み、基準信号および測定信号を組み合わせ、組み合わされたコントローラ入力データストリームを提供することができる。図3に示されるように、組み合わされたシステムデータストリームは、組み合わされた基準信号及び測定信号 SIGNAL(複数可)と称されることができる。上述されるように、基準信号は、図2に示されないが、完全に利用されることができる、またはコントローラ出力信号もしくはプラント入力信号から部分的に逸脱する(もしくは始まる)ことができる。
【0024】
上述されるように、レイヤ102、104、106、および108は、ソフトウェアベースのレイヤであることができ、非決定論的(または時変)であるとみなされることができる。したがって、これらのようなレイヤ102、104、106、および108は、コントローラ112によって実行されるときに、動的バッファサイズ変更、および/またはレイテンシを処理することに起因する基準信号と測定信号との間の不整合を引き起こすことに一般的に寄与する可能性がある。しかしながら、信号調整回路201(例えば、ミキサー203および/またはパック回路209)がハードウェアベースであり、時間決定論的であると仮定すると、基準信号と測定信号の両方の信号を互いに信号調整回路201を介して組み合わせて、コントローラ入力信号と称される組み合わされた基準信号及び測定信号を提供する場合に、基準信号と測定信号との間のいかなる不整合をも緩和することができる、信号調整回路201をすべての非時間決定論的(または時変)レイヤ102、104、106、および108の前に一般的に利用する、または配置する。
【0025】
例えば、レイヤ102、104、106、および108の間の典型的な動的バッファサイズ変更は、全体的なエンドツーエンドレイテンシを変更することができる。しかしながら、信号調整回路201の位置がSWレイヤ処理に関連する潜在的な動的バッファレイテンシ変更を過ぎて配置されていることから、信号調整回路201は、基準信号および測定信号を同期させることができ、組み合わされた基準信号及び測定信号のレイテンシは、一定であるとみなされることができる。例えば、組み合わされた基準信号及び測定信号に適用されるいずれかのレイテンシは、同じ方式において、基準信号および測定信号に影響する可能性があるため、相対的なレイテンシは、一定であるとみなされることができる。基準信号および測定信号は、組み合わされた基準信号及び測定信号に存在するときに、図2に記載されるように、基準信号および測定信号に対応することができる。同じことは、図2に記載されるように、コントローラ入力信号に対応することができる組み合わされた基準信号及び測定信号に当てはまることができる。信号調整回路201は、基準信号および測定信号を互いと(パック回路またはミキサーを介して)マージし、または互い組み合わせ、組み合わされたシステム入力(または組み合わされたシステムデータストリーム)をSoCデバイス111に提供し、デバイス動作中に非決定論的ソフトウェアレイヤ102、104、106、および108の1つ以上の内のいかなる一時的な不整合をも防ぐ。
【0026】
図4は、1つの実施形態に従い、AECシステムに関連して使用される場合の適応制御システム100’’の実施例を示す。サーバレイヤ104(またはPulseAudioデーモン)は、シンクレイヤ300およびソースレイヤ302を一般的に含む。適応制御システム100’’は、典型的なPulseAudioデーモンフレームワーク中に組み込まれている独立したシンクおよびソース処理の事例を一般的に示す。サーバレイヤ104のPulseAudio I/Oバッファは、同期していると仮定されることができない。
【0027】
ハードウェアベースの入力デバイス(複数可)120は、AECシステムと関連して使用される場合にマイクロホンまたは加速度センサ(示されない)から捕捉されるような音声データを測定信号上に提供することができる。捕捉された音声データは、所望の音声データに対応するが、室内で、またはリスニング環境内で捕捉される不要なエコーデータ(例えば、測定信号上のデータ)を含む可能性がある。信号調整回路201は、音声データをシステム入力信号から転送し、同じものをハードウェアベースの出力デバイス(複数可)122に提供し、図2に示されるようなプラント204を表している、音響経路にブロードキャストすることができる。上述されるように、基準信号は、システム入力信号に対応することができる。AECの場合、システム入力信号上の音声データは、コントローラ動作から独立して再生される音楽データに対応することができるが、再生中にシステムまたはプラントに転送されると、不要なエコーとみなされる。信号調整回路201は、システム入力信号を基準信号と完全に、または部分的に混合し、これを測定信号と組み合わせ、エコーキャンセラをコントローラ内で可能にすることができる。ハードウェアベースの出力デバイス(複数可)122がシステム入力信号上のデジタルデータをアナログデータに変換するために、そして室内で、またはリスニング環境内で任意のラウドスピーカーに同じものを提供するために、任意の数のD/Aコンバータに加えてパワーアンプを含むことができることが認識される。
【0028】
信号調整回路201は、リアルタイムに、基準信号上のデータを測定信号上で測定されたマイクデータ(すなわち、不要なエコーを含む所望の音声)とパックして、または加えて、組み合わされた基準信号及び測定信号、またはコントローラ入力信号を提供することができる。マイクデータと基準データとの間のレイテンシが組み合わされた基準信号及び測定信号上で、またはコントローラ入力信号上で比較的に一定のままであることができる場合に、組み合わされた基準信号及び測定信号、またはコントローラ入力信号は、いかなる動的システム挙動に対してもロバストであるとみなされることができる。入力/出力(I/O)エンドツーエンドレイテンシは動的に変化することができるが、AEC収束は、組み合わされた基準信号及び測定信号上のマイクデータと基準データとの間の安定した/一定である相対的なレイテンシによって保証されることができる。
【0029】
図5は、1つの実施形態に従い、ANCシステムと関連して使用されるような適応制御システム100’’’の実施例を示す。サーバレイヤ104(またはPulseAudioデーモン)は、シンクレイヤ300およびソースレイヤ302を一般的に含む。適応制御システム100’’’は、典型的なPulseAudioデーモンフレームワーク中に組み込まれる独立したシンクおよびソース処理の事例を概して示す。サーバレイヤ104のPulseAudio I/Oバッファは、同期していると仮定されることができない。
【0030】
ハードウェアベースの入力デバイス(複数可)120は、ANCシステムと関連して使用される場合にマイクまたは加速度センサ(示されない)から捕捉されるような音声データを測定信号上に提供することができる。捕捉された音声データは、室内で、またはリスニング環境内で捕捉される所望の音楽または音声データ(例えば、測定信号上のデータ)に加えて不要なノイズに対応することができる。信号調整回路201は、コントローラ出力信号から音声データを転送し、同じものをハードウェアベースの出力デバイス(複数可)122に提供し、図2に示されるようなプラントを表しているノイズキャンセラのための音響経路にブロードキャストすることができる。上述されるように、基準信号は、コントローラ出力信号に対応しない場合があるが、図2に示されない、不要なノイズのみを提供する別のセンサによって提供されるような不要なノイズのみに対応することができる。ANCの場合、コントローラ出力信号上の音声データは、プラント204を介してノイズキャンセレーションのためにアンチノイズ信号を再生するため、アプリケーションレイヤ102内のコントローラ動作を介してオーディオソースに向かうループバックとして機能するアンチノイズデータに対応することができる。信号調整回路201は、基準信号を測定信号とマージし、コントローラによってプラント204を介してノイズキャンセレーションを可能にする。ハードウェアベースの出力デバイス(複数可)122がコントローラ出力信号上のデジタルデータをアナログデータに変換するために、そして同じものを室内で、またはリスニング環境内で、任意のラウドスピーカーに提供するために、任意の数のD/Aコンバータに加えて、パワーアンプを含むことができることが認識される。
【0031】
信号調整回路201は、リアルタイムに、測定信号上の測定されたマイクデータ(すなわち、不要なノイズを含む所望の音楽/音声)と、基準信号上のデータをパックし、または加え(すなわち、データをマージし)、組み合わされた基準信号及び測定信号、またはコントローラ入力信号を提供することができる。マイクロホンデータと基準データとの間のレイテンシが組み合わされた基準信号及び測定信号、またはコントローラ入力信号上で比較的に一定のままであることができる場合に、組み合わされた基準信号及び測定信号、またはコントローラ入力信号は、いかなる動的システム挙動に対してもロバストであるとみなされることができる。入力/出力(I/O)エンドツーエンドレイテンシが動的に変化する可能性があるが、ANC収束は、組み合わされた基準信号及び測定信号上のマイクロホンデータと基準データとの間の安定した/一定である相対的なレイテンシによって保証されることができる。
【0032】
測定信号、基準信号、組み合わされた基準信号及び測定信号、コントローラ入力信号、プラント入力信号およびコントローラ出力信号に対応するデータストリームは、ソフトウェアレイヤ102、104、106間の時分割多重化(TDM)データストリーム、または内部リニアもしくはリングバッファとして実装されることができる。上記の図4と関連して記述される実施例について、TDMデータストリームは、入力データ(例えば、測定されたマイクからの音声データ)、出力データ(例えば、コントローラ出力信号からのデータ)、および基準信号からのデータによって部分的に充填される。システム100’’と関連して記述されるような実施例において、TDMベースのデータストリームを1からN+Mチャネル(またはデータのビット)によってパックされることができ、そこでMは、測定されたマイクからの(またはハードウェアベースの入力デバイス(複数可)120からの)音声データに対応し、Nは、基準データに対応する。AECの場合、理想的にエコーを完全にキャンセルし、さらなるアプリケーションサービスのために音声をシンクとして処理する、AECコントローラプロセスの後に、マイクコンテンツは、所望の音声、および不要なエコーを含む可能性がある。概して、音楽は、ソース(デバイストランシーバミュージック)として機能することができる。デバイスが通信目的のために音声を、例えば、通話として受信するので、音声は、シンクとして機能することができる。ANCの場合、理想的にノイズを完全にキャンセルし、アンチノイズ信号をシンクとしてオーディオソースアプリケーションのために処理するANCコントローラプロセスの後に、マイクコンテンツは、所望の音楽/音声、および不要なノイズを含む可能性があるため、コントローラのアンチノイズ信号は、デバイス出力にループバックし、ノイズキャンセレーションを音響経路内で実行させることができる。
【0033】
例示的な実施形態が上述されているが、これらの実施形態が本発明のすべての可能な形態を説明することは意図されていない。むしろ、本明細書において使用される言葉は、限定ではなく説明の言葉であり、さまざまな変更が本発明の趣旨および範囲から逸脱することなく行われることができることが理解される。加えて、さまざまな実装する実施形態の特徴を組み合わせ、本発明のさらなる実施形態を形成することができる。
図1
図2
図3
図4
図5