(57)【要約】【課題】組み込みアーキテクチャの中の同期マルチチャネルループバックの提供。【解決手段】少なくとも１つの実施形態において、組み込みＬｉｎｕｘ（登録商標）システムを提供する。Ｌｉｎｕｘ（登録商標）システムは、メモリ、システムオンチップ（ＳｏＣ）デバイス、および第1の回路を備える。このＳｏＣデバイスは、メモリを含み、不要なオーディオコンテンツを示す少なくとも１つの基準信号と、リスニング環境で測定音声データを示す測定信号を処理するようにプログラムされる。第1の回路は、基準信号と、測定信号を受信するようにプログラムされる。第1の回路は、基準信号を測定信号とマージして、組み合わされたシステム入力をＳｏＣデバイスに提供し、基準信号と測定信号との間の一時的な不整合がＬｉｎｕｘ（登録商標）システムの１つ以上のソフトウェアレイヤによって引き起こされることを防ぐようにさらにプログラムされる。【選択図】なし【特許請求の範囲】
【請求項１】
音声処理装置用の組み込みＬｉｎｕｘ（登録商標）システムであって、
メモリと、
前記メモリを含み、不要な音声コンテンツを示す基準信号と、リスニング環境で測定された音声データを示す測定信号とを少なくとも処理するようにプログラムされるシステムオンチップ（ＳｏＣ）デバイスと、
第１の回路であって、
前記基準信号を受信すること、
前記測定信号を受信すること、
前記基準信号を前記測定信号とマージして、組み合わされたシステム入力を前記ＳｏＣデバイスに提供し、前記Ｌｉｎｕｘ（登録商標）システムの１つ以上のソフトウェアレイヤによって引き起こされる前記基準信号と前記測定信号との間の一時的な不整合を防ぐこと、
を行うようにプログラムされる、前記第１の回路と、
を備える、前記システム。
【請求項２】
前記第１の回路に前記基準信号を送信するようにプログラムされるミキサーをさらに備える、請求項１に記載のシステム。
【請求項３】
前記第１の回路に前記基準信号を送信するようにプログラムされる入力センサをさらに備える、請求項１に記載のシステム。
【請求項４】
前記第１の回路に前記測定信号を送信するようにプログラムされる入力センサをさらに備える、請求項１に記載のシステム。
【請求項５】
前記入力センサが、マイクまたは加速度センサのうちの１つである、請求項４に記載のシステム。
【請求項６】
前記第１の回路が、前記組み合わされたシステム入力が前記Ｌｉｎｕｘ（登録商標）システムの前記１つ以上のソフトウェアレイヤに送信される前に、前記基準信号を前記測定信号とマージするようにさらにプログラムされる、請求項１に記載のシステム。
【請求項７】
前記１つ以上のソフトウェアレイヤの第１のソフトウェアレイヤが、少なくとも１つの音声ベースのカーネルを含み、
前記少なくとも１つの音声ベースのカーネルが、サウンドドライバを含み、
前記１つ以上のソフトウェアレイヤの第２のソフトウェアレイヤが、音声ベースのライブラリを含み、
前記１つ以上のソフトウェアレイヤの第３のソフトウェアレイヤが、サウンドカードを管理するサウンドサーバを含む、
請求項１に記載のシステム。
【請求項８】
前記第１の回路が、複数のＮ個の音声ベースのチャネルとして前記基準信号を受信するようにさらにプログラムされる、請求項１に記載のシステム。
【請求項９】
前記第１の回路が、複数のＭ個の音声ベースのチャネルとして前記測定信号を受信するようにさらにプログラムされる、請求項８に記載のシステム。
【請求項１０】
前記第１の回路が、前記基準信号を前記測定信号とマージしてＭ＋Ｎ個の音声ベースのチャネルを生成し、時分割多重化（ＴＤＭ）データストリームを形成するようにさらにプログラムされる、請求項９に記載のシステム。
【請求項１１】
組み込みＬｉｎｕｘ（登録商標）システムのために基準信号と測定信号との間の一時的な不整合を防ぐようにプログラムされる非一過性コンピュータ可読媒体で実施されるコンピュータプログラム製品であって、
不要な音声コンテンツを示す前記基準信号を受信し、
リスニング環境で測定された音声データを示す前記測定信号を受信し、
システムオンチップ（ＳｏＣ）デバイスで前記基準信号及び前記測定信号を処理し、
前記基準信号を前記測定信号とマージして、組み合わされたシステム入力を前記ＳｏＣデバイスに提供し、前記Ｌｉｎｕｘ（登録商標）システムの１つ以上のソフトウェアレイヤによって引き起こされる前記基準信号と前記測定信号との間の一時的な不整合を防ぐ、
命令を備える、前記コンピュータプログラム製品。
【請求項１２】
ミキサーを介して第１の回路に前記基準信号を送信する命令をさらに備える、請求項１１に記載のコンピュータプログラム製品。
【請求項１３】
入力センサを介して第１の回路に前記基準信号を送信する命令をさらに備える、請求項１１に記載のコンピュータプログラム製品。
【請求項１４】
第１の回路に前記測定信号を送信する命令をさらに備える、請求項１１に記載のコンピュータプログラム製品。
【請求項１５】
前記組み合わされたシステム入力が前記Ｌｉｎｕｘ（登録商標）システムの前記１つ以上のソフトウェアレイヤに送信される前に、前記基準信号を前記測定信号とマージする命令をさらに備える、請求項１１に記載のコンピュータプログラム製品。
【請求項１６】
前記１つ以上のソフトウェアレイヤの第１のソフトウェアレイヤが、少なくとも１つの音声ベースのカーネルを含み、
前記少なくとも１つの音声ベースのカーネルが、サウンドドライバを含み、
前記１つ以上のソフトウェアレイヤの第２のソフトウェアレイヤが、音声ベースのライブラリを含み、
前記１つ以上のソフトウェアレイヤの第３のソフトウェアレイヤが、サウンドカードを管理するサウンドサーバを含む、
請求項１１に記載のコンピュータプログラム製品。
【請求項１７】
複数のＮ個の音声ベースのチャネルとして前記基準信号を受信する命令をさらに備える、請求項１１に記載のコンピュータプログラム製品。
【請求項１８】
複数のＭ個の音声ベースのチャネルとして前記測定信号を受信する命令をさらに備える、請求項１７に記載のコンピュータプログラム製品。
【請求項１９】
前記基準信号を前記測定信号とパックまたは追加／マージしてＭ＋Ｎ個の音声ベースのチャネルを生成し、時分割多重化（ＴＤＭ）データストリームを形成する命令をさらに備える、請求項１８に記載のコンピュータプログラム製品。
【請求項２０】
組み込みＬｉｎｕｘ（登録商標）システムのために基準信号と測定信号との間の一時的な不整合を防ぐようにプログラムされる非一過性コンピュータ可読媒体で実施されるコンピュータプログラム製品であって、
適応制御システムのための出力データを示す前記基準信号を受信し、
前記測定信号を受信し、
システムオンチップ（ＳｏＣ）デバイスで前記基準信号及び前記測定信号を処理し、
前記基準信号を前記測定信号とマージして、組み合わされたシステム入力を前記ＳｏＣデバイスに提供し、前記Ｌｉｎｕｘ（登録商標）システムの１つ以上のソフトウェアレイヤによって引き起こされる前記基準信号と前記測定信号との間の一時的な不整合を防ぐ、
命令をさらに備える、前記コンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本願は、その開示が全体として本明細書に参照により援用される、２０１９年１月３１日に出願された米国仮特許出願第６２／７９９，３３８号の利益を主張する。
【０００２】
本明細書に開示される態様は、概して組み込みアーキテクチャの中の同期マルチチャネルループバックに関する。これらの態様及び他を以下により詳細に説明する。
【背景技術】
【０００３】
データシステムに適用されるバッファは不変ではないので、しばしば、組み込みシステムにおける（例えば、Ｌｉｎｕｘ（登録商標）オペレーティングシステムにおける）処理はリアルタイムではない。係るバッファは、メモリ使用量及びシステム負荷のため、経時的に変化する場合がある。この動きは、携帯電話で広く使用されるそれらの一般向けで汎用のシステムオンチップ（ＳｏＣ）システムを、例えば音響エコーキャンセレーション（ＡＥＣ）アルゴリズム等の高度なアルゴリズムにほとんど使用不可能にする。この状況により、高価なコンパニオンチップのニーズも高まる。
【発明の概要】
【課題を解決するための手段】
【０００４】
少なくとも一実施形態では、組み込みＬｉｎｕｘ（登録商標）システムが提供される。Ｌｉｎｕｘ（登録商標）システムは、メモリ、システムオンチップ（ＳｏＣ）デバイス、及び第１の回路を含む。ＳｏＣデバイスはメモリを含み、不要な音声コンテンツを示す基準信号と、リスニング環境で測定された音声データを示す測定信号とを少なくとも処理するようにプログラムされる。第１の回路は、基準信号及び測定信号を受信するようにプログラムされる。第１の回路は、基準信号を測定信号とマージして、組み合わされたシステム入力をＳｏＣデバイスに提供し、Ｌｉｎｕｘ（登録商標）システムの１つ以上のソフトウェアレイヤによって引き起こされる基準信号と測定信号との間の一時的な不整合を防ぐようにさらにプログラムされる。
【０００５】
少なくとも１つの別の実施形態では、組み込みＬｉｎｕｘ（登録商標）システムのために基準信号と測定信号との間の一時的な不整合を防ぐようにプログラムされる非一過性コンピュータ可読媒体で実施されるコンピュータプログラム製品が提供される。コンピュータプログラム製品は、不要な音声コンテンツを示す基準信号を受信し、リスニング環境で測定された音声データを示す測定信号を受信する命令を含む。コンピュータプログラム製品は、システムオンチップ（ＳｏＣ）デバイスで基準信号及び測定信号を処理し、基準信号を測定信号とマージして、組み合わされたシステムデータストリームをＳｏＣデバイスに提供し、Ｌｉｎｕｘ（登録商標）システムの１つ以上のソフトウェアレイヤによって引き起こされる基準信号と測定信号との間の一時的な不整合を防ぐ命令を含む。
【０００６】
少なくとも１つの別の実施形態では、組み込みＬｉｎｕｘ（登録商標）システムのために基準信号と測定信号との間の一時的な不整合を防ぐようにプログラムされる非一過性コンピュータ可読媒体で実施されるコンピュータプログラム製品が提供される。コンピュータプログラム製品は、適応制御システムのための出力データを示す基準信号を受信する命令を含む。コンピュータプログラム製品は、システムオンチップ（ＳｏＣ）デバイスで基準信号及び測定信号を処理し、基準信号を測定信号とマージして、組み合わされたシステムデータストリームをＳｏＣデバイスに提供し、Ｌｉｎｕｘ（登録商標）システムの１つ以上のソフトウェアレイヤによって引き起こされる基準信号と測定信号との間の一時的な不整合を防ぐ命令を含む。
例えば、本願は以下の項目を提供する。
（項目１）
音声処理装置用の組み込みＬｉｎｕｘ（登録商標）システムであって、
メモリと、
上記メモリを含み、不要な音声コンテンツを示す基準信号と、リスニング環境で測定された音声データを示す測定信号とを少なくとも処理するようにプログラムされるシステムオンチップ（ＳｏＣ）デバイスと、
第１の回路であって、
上記基準信号を受信すること、
上記測定信号を受信すること、
上記基準信号を上記測定信号とマージして、組み合わされたシステム入力を上記ＳｏＣデバイスに提供し、上記Ｌｉｎｕｘ（登録商標）システムの１つ以上のソフトウェアレイヤによって引き起こされる上記基準信号と上記測定信号との間の一時的な不整合を防ぐこと、
を行うようにプログラムされる、上記第１の回路と、
を備える、上記システム。
（項目２）
上記第１の回路に上記基準信号を送信するようにプログラムされるミキサーをさらに備える、上記項目に記載のシステム。
（項目３）
上記第１の回路に上記基準信号を送信するようにプログラムされる入力センサをさらに備える、上記項目のいずれか一項に記載のシステム。
（項目４）
上記第１の回路に上記測定信号を送信するようにプログラムされる入力センサをさらに備える、上記項目のいずれか一項に記載のシステム。
（項目５）
上記入力センサが、マイクまたは加速度センサのうちの１つである、上記項目のいずれか一項に記載のシステム。
（項目６）
上記第１の回路が、上記組み合わされたシステム入力が上記Ｌｉｎｕｘ（登録商標）システムの上記１つ以上のソフトウェアレイヤに送信される前に、上記基準信号を上記測定信号とマージするようにさらにプログラムされる、上記項目のいずれか一項に記載のシステム。
（項目７）
上記１つ以上のソフトウェアレイヤの第１のソフトウェアレイヤが、少なくとも１つの音声ベースのカーネルを含み、
上記少なくとも１つの音声ベースのカーネルが、サウンドドライバを含み、
上記１つ以上のソフトウェアレイヤの第２のソフトウェアレイヤが、音声ベースのライブラリを含み、
上記１つ以上のソフトウェアレイヤの第３のソフトウェアレイヤが、サウンドカードを管理するサウンドサーバを含む、
上記項目のいずれか一項に記載のシステム。
（項目８）
上記第１の回路が、複数のＮ個の音声ベースのチャネルとして上記基準信号を受信するようにさらにプログラムされる、上記項目のいずれか一項に記載のシステム。
（項目９）
上記第１の回路が、複数のＭ個の音声ベースのチャネルとして上記測定信号を受信するようにさらにプログラムされる、上記項目のいずれか一項に記載のシステム。
（項目１０）
上記第１の回路が、上記基準信号を上記測定信号とマージしてＭ＋Ｎ個の音声ベースのチャネルを生成し、時分割多重化（ＴＤＭ）データストリームを形成するようにさらにプログラムされる、上記項目のいずれか一項に記載のシステム。
（項目１１）
組み込みＬｉｎｕｘ（登録商標）システムのために基準信号と測定信号との間の一時的な不整合を防ぐようにプログラムされる非一過性コンピュータ可読媒体で実施されるコンピュータプログラム製品であって、
不要な音声コンテンツを示す上記基準信号を受信し、
リスニング環境で測定された音声データを示す上記測定信号を受信し、
システムオンチップ（ＳｏＣ）デバイスで上記基準信号及び上記測定信号を処理し、
上記基準信号を上記測定信号とマージして、組み合わされたシステム入力を上記ＳｏＣデバイスに提供し、上記Ｌｉｎｕｘ（登録商標）システムの１つ以上のソフトウェアレイヤによって引き起こされる上記基準信号と上記測定信号との間の一時的な不整合を防ぐ、
命令を備える、上記コンピュータプログラム製品。
（項目１２）
ミキサーを介して第１の回路に上記基準信号を送信する命令をさらに備える、上記項目に記載のコンピュータプログラム製品。
（項目１３）
入力センサを介して第１の回路に上記基準信号を送信する命令をさらに備える、上記項目のいずれか一項に記載のコンピュータプログラム製品。
（項目１４）
第１の回路に上記測定信号を送信する命令をさらに備える、上記項目のいずれか一項に記載のコンピュータプログラム製品。
（項目１５）
上記組み合わされたシステム入力が上記Ｌｉｎｕｘ（登録商標）システムの上記１つ以上のソフトウェアレイヤに送信される前に、上記基準信号を上記測定信号とマージする命令をさらに備える、上記項目のいずれか一項に記載のコンピュータプログラム製品。
（項目１６）
上記１つ以上のソフトウェアレイヤの第１のソフトウェアレイヤが、少なくとも１つの音声ベースのカーネルを含み、
上記少なくとも１つの音声ベースのカーネルが、サウンドドライバを含み、
上記１つ以上のソフトウェアレイヤの第２のソフトウェアレイヤが、音声ベースのライブラリを含み、
上記１つ以上のソフトウェアレイヤの第３のソフトウェアレイヤが、サウンドカードを管理するサウンドサーバを含む、
上記項目のいずれか一項に記載のコンピュータプログラム製品。
（項目１７）
複数のＮ個の音声ベースのチャネルとして上記基準信号を受信する命令をさらに備える、上記項目のいずれか一項に記載のコンピュータプログラム製品。
（項目１８）
複数のＭ個の音声ベースのチャネルとして上記測定信号を受信する命令をさらに備える、上記項目のいずれか一項に記載のコンピュータプログラム製品。
（項目１９）
上記基準信号を上記測定信号とパックまたは追加／マージしてＭ＋Ｎ個の音声ベースのチャネルを生成し、時分割多重化（ＴＤＭ）データストリームを形成する命令をさらに備える、上記項目のいずれか一項に記載のコンピュータプログラム製品。
（項目２０）
組み込みＬｉｎｕｘ（登録商標）システムのために基準信号と測定信号との間の一時的な不整合を防ぐようにプログラムされる非一過性コンピュータ可読媒体で実施されるコンピュータプログラム製品であって、
適応制御システムのための出力データを示す上記基準信号を受信し、
上記測定信号を受信し、
システムオンチップ（ＳｏＣ）デバイスで上記基準信号及び上記測定信号を処理し、
上記基準信号を上記測定信号とマージして、組み合わされたシステム入力を上記ＳｏＣデバイスに提供し、上記Ｌｉｎｕｘ（登録商標）システムの１つ以上のソフトウェアレイヤによって引き起こされる上記基準信号と上記測定信号との間の一時的な不整合を防ぐ、
命令をさらに備える、上記コンピュータプログラム製品。
（摘要）
少なくとも１つの実施形態において、組み込みＬｉｎｕｘ（登録商標）システムを提供する。Ｌｉｎｕｘ（登録商標）システムは、メモリ、システムオンチップ（ＳｏＣ）デバイス、および第1の回路を備える。このＳｏＣデバイスは、メモリを含み、不要なオーディオコンテンツを示す少なくとも１つの基準信号と、リスニング環境で測定音声データを示す測定信号を処理するようにプログラムされる。第1の回路は、基準信号と、測定信号を受信するようにプログラムされる。第1の回路は、基準信号を測定信号とマージして、組み合わされたシステム入力をＳｏＣデバイスに提供し、基準信号と測定信号との間の一時的な不整合がＬｉｎｕｘ（登録商標）システムの１つ以上のソフトウェアレイヤによって引き起こされることを防ぐようにさらにプログラムされる。
【図面の簡単な説明】
【０００７】
本開示の実施形態は、添付の特許請求の範囲において詳細に示される。しかしながら、多様な実施形態の他の特徴は、添付図面と併せて以下の発明を実施するための形態を参照することによってより明らかになり、最もよく理解される。
【０００８】
【図１】組み込み適応制御システムの例を示す。
【図２】一実施形態に係る閉ループ制御の実施態様の高度な実施態様を示す。
【図３】一実施形態に係る組み込み適応制御システムを示す。
【図４】一実施形態に係る音響エコーキャンセラ／キャンセレーションに関連して使用される適応制御システムの詳細な実施態様の例を示す。
【図５】一実施形態に係るアクティブノイズキャンセレーションに関連して使用される適応制御システムの詳細な実施態様の例を示す。
【発明を実施するための形態】
【０００９】
本発明の発明を実施するための形態を、必要に応じて本明細書に開示する。しかし、開示する実施形態が、多様な形式及び代替形式で実施され得る本発明の例示にすぎないことを理解するべきである。図は必ずしも原寸に比例していない。特定の構成要素の詳細を示すために、一部の特徴を誇張するまたは最小限に抑える場合がある。したがって、本明細書に開示する具体的な構造上の詳細及び機能上の詳細は、制限的なものとして解釈するべきではなく、単に本発明を多様に利用するために当業者を指導するための代表的な根拠として解釈するべきである。
【００１０】
本明細書に開示するサーバ、コントローラ、及びクライアント等の多様な電気装置が、多様なマイクロプロセッサ、集積回路、メモリデバイス（例えば、ＦＬＡＳＨ、ランダムアクセスメモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、電気的プログラマブル読み取り専用メモリ（ＥＰＲＯＭ）、電気的消去可能ＰＲＯＭ（ＥＥＰＲＯＭ）、または他のその適切な変形）、及び互いに共同して本明細書に開示する動作（複数可）を実行するソフトウェアを含んでよいことが認識される。さらに、これらの電気装置は、開示する任意の数の機能を実行するようにプログラムされる非一過性コンピュータ可読媒体で実施されるコンピュータプログラムを実行するために１つ以上のマイクロプロセッサを利用する。さらに、本明細書で提供される多様な電気装置は、ハウジング、及び多様な数のマイクロプロセッサ、集積回路、ハウジングの中に配置されるメモリデバイス（例えば、ＦＬＡＳＨ、ランダムアクセスメモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、電気的プログラマブル読み取り専用メモリ（ＥＰＲＯＭ）、電気的消去可能ＰＲＯＭ（ＥＥＰＲＯＭ））を含む。また、電気装置は、それぞれ本明細書に説明する他のハードウェアベースのデバイスからデータを受信し、他のハードウェアベースのデバイスへデータを送信するためのハードウェアベースの入力及び出力も含む。
【００１１】
概して、本明細書に開示する実施形態は、とりわけ、例えば多くの高度アルゴリズムの実現可能性を与えるＬｉｎｕｘ（登録商標）オペレーティングシステムに関連して使用し得る同期した基準測定組み込み入力信号アーキテクチャ及び測定組み込み入力信号アーキテクチャを提供する。アーキテクチャは信頼性があり、任意の数の適応制御戦略のために実装され得る。Ｌｉｎｕｘ（登録商標）オペレーティングシステムは、任意の数の音声処理装置のために使用され得る。例えば、アーキテクチャは、例えば音響エコーキャンセラまたはキャンセレーション（ＡＥＣ）アプリケーション、アクティブノイズキャンセレーション（ＡＮＣ）システム、任意の他の適切な音声ベースのアプリケーション、または一般的に、同期した相対的な基準信号及び測定信号を必要とする任意の制御アプリケーションに関連するが、これに限定されない同期した基準信号及び測定信号を利用してよい。示したエンハンスメント（またはアーキテクチャ）は、エンドツーエンドレイテンシが動的に変化する場合がある一方で、簡素であり得、基準信号と測定信号との間の相対的な同期設計を提供する低コストの方法をもたらし得る信号調整回路を利用してよい。本明細書に説明する実施形態が、音声システムを含まない任意のシステムに適用され得、それにより、例えばエラーを最小限に抑えるために相対的な同期した基準信号及び測定信号を利用することによって制御ターゲットを達成することが所望されることが認識される。
【００１２】
図１は、組み込み適応制御システム１００の例を示す。適応制御システム１００は、例えば組み込みＬｉｎｕｘ（登録商標）オペレーティングシステム（ＯＳ）１０１で実装されてよい。システム１００がＬｉｎｕｘ（登録商標）カーネル（例えば、ＯＳのコア）及び関係するサポートツール及びライブラリを含んでよいことが認識される。システム１００は、概してアプリケーションレイヤ１０２、サーバ（もしくはサーバレイヤ）１０４、サウンドサブシステムレイヤ１０６、または例えば拡張Ｌｉｎｕｘ（登録商標）サウンドアーキテクチャ（ＡＬＳＡ）ライブラリレイヤ１０６もしくはオープンサウンドシステム（ＯＳＳ）ライブラリレイヤ１０６、カーネル（もしくはドライバ）レイヤ（例えば、ＡＬＳＡカーネル／ドライバもしくはＯＳＳカーネル／ドライバ）１０８、及びハードウェアレイヤ１１０を含む。アプリケーションレイヤ１０２、サーバ１０４、サウンドサブシステムレイヤ１０６、カーネルレイヤ１０８、及びハードウェアレイヤ１１０は、少なくとも１つのシステムオンチップ（ＳｏＣ）デバイス１１１を形成してよい。ＳｏＣデバイス１１１は、その中のすべての関連付けられた構成要素を統合する集積回路であってよい。ＳｏＣデバイス１１１が、中央演算処理装置（ＣＰＵ）、メモリ１１３、入力／出力ポート、及び／または単一の基板またはマイクロチップ上にパッケージされ得る二次記憶装置を含んでよいことが認識される。また、ＳｏＣデバイス１１１は、デジタル信号処理装置、アナログ信号処理装置、及び／または混合信号処理装置を含んでもよい。ＳｏＣデバイス１１１は、Ｌｉｎｕｘ（登録商標）組み込みシステムの一部であってよい。
【００１３】
システム１００が、アプリケーションレイヤ１０２、サーバレイヤ１０４、サウンドサブシステムレイヤ１０６、及びカーネル（またはドライバ）レイヤ１０８によって実行されるありとあらゆるタスクを行う命令を実行するための少なくとも１つのコントローラ１１２（以後、コントローラ１１２）をさらに含むことが認識される。さらに、コントローラ１１２は、データをハードウェアレイヤ１１０から受信されたとして処理するために、またはデータをハードウェアレイヤ１１０に送信するためにハードウェアレイヤ１１０と連動してよい。
【００１４】
制御システム１００が、任意の適応制御の実施態様（または閉ループ制御戦略）で利用されてよいことが認識される。例えば、図２は、閉ループ戦略を利用する制御手段２００を示す。制御手段２００は、信号調整回路２０１（つまり第１の回路２０１）、コントローラ２０２、コントローラ２０２の制御下にあるシステムまたはプラント２０４（以後「プラント２０４」）、及びセンサ２０６を含む。信号調整回路２０１は、基準信号をシステム／プラント入力信号から分離するためのミキサー２０３、及び基準信号を測定信号と組み合わせてコントローラ入力信号を提供するためのパック回路２０９を含んでよい。本明細書の任意の信号に対するすべての参照が、単数または複数（例えば、各それぞれの入力及び出力のための任意の数の信号）であってよいことが認識される。基準信号は、ミキサー２０３を介して信号調整回路２０１に提供されてよく、システム／プラント入力信号によって、または信号調整回路２０１への別個の入力によって分離されてよい。基準信号は、図１に関連して示すハードウェアレイヤ１１０から以前に出力された音声出力データに直接的に対応してよい。これをループバック機構と称してもよい。基準信号は、任意の数の音声チャネルＭで提供されるデータを含んでよい。基準信号は、ユーザーにとって不要と判断される音声データに相当する場合がある。また、測定信号は、信号調整回路２０１に提供されてもよい。測定信号は、例えばセンサ２０６（例えば、マイク）から送信される音声データに相当する場合がある。センサ２０６は、プラント２０４からのプラント出力信号としても定義されるプラント２０４からの測定出力に相当する測定信号を生成する。この場合、測定信号は、プラント入力信号またはコントローラ出力信号上の音声に相当してよい。測定信号は、ユーザーがリスニング環境で聞く実際の音声を含んでよい。測定信号は、任意の数の音声チャネル、Ｎを含んでよい。コントローラ２０２は、例えばセンサ２０６（つまりマイク）からの基準信号及び測定信号の同期組み合わせであるコントローラ入力信号を受信する。アナログデジタルコンバータは、センサ２０６と信号調整回路２０１との間に配置されてよいことが認識される。一般的には、パック回路２０９は、測定信号と基準信号との間でデータをマージしてよい。一例では、マージ動作は、パック回路２０９が、測定信号を加算または基準信号から減算して、コントローラ２０２に対して組み合わされたコントローラ入力信号を提供することに相当してよい。基準信号は、測定信号に重畳されるので、コントローラ入力信号は、Ｍ個のチャネルの形をとってよい。代わりに、マージ動作は、パック回路２０９が測定信号を基準信号と結合（またはパック）してコントローラ入力信号を提供することに相当してよい。しかしながら、基準信号及び測定信号は、コントローラ入力信号の個々のスロットの中にパックされるので、パック動作の結果として、コントローラ入力信号は、Ｍ＋Ｎ個のチャネルの形をとる場合がある。例えば、コントローラ入力信号は、時分割多重化（ＴＤＭ）データストリームを提供するＭ＋Ｎ個の音声ベースのチャネルを形成してよく、測定信号からのＭ個の音声ベースのチャネル及び基準信号からのＮ個の音声ベースのチャネルでパックされる。一般的には、信号調整回路２０１は、基準信号上のデータと測定信号上のデータとの間の一時的な不整合を防ぐために、基準信号上のデータを測定信号上のデータとマージして、ＳｏＣデバイス１１１に対して組み合わされたシステムデータストリームを提供するように構成される。係る一時的な不整合は、制御手段２００の動作中にレイヤ１０２、１０４、１０６、及び１０８のうちの１つ以上によって引き起こされる場合がある。この態様を以下により詳細に説明する。
【００１５】
上述されるように、本明細書における実施形態を、オーディオシステムを含まない、いずれかのシステムに適用することができることにより、Ｌｉｎｕｘ（登録商標）システムの１つ以上のソフトウェアレイヤを通して伝播する２つの信号間の一時的な不整合を減少させることが望ましい。適応制御システムにおいて、基準信号は、ループバック機構を利用するプラントへの入力データに単純に対応することができる。測定信号は、適応制御システム中のセンサによって提供されるようなデータに対応することができ、このセンサは、ある形式のフィードバック情報を提供する。したがって、この場合、信号調整回路２０１は、基準信号上のデータを測定信号上のデータとマージすることができる。これらの信号間でデータをマージした後に、この信号調整回路２０１は、組み合わされたシステムデータストリームをＳｏＣデバイス１１１に提供し、基準信号上のデータと、測定信号上のデータとの間の一時的な不整合を防ぐ。一時的な不整合は一般的に、ソフトウェアレイヤ１０２、１０４、１０６、および１０８のうちの１つ以上によって引き起こされ得る。この態様は、制御目標を、例えば、相対的に同期した基準信号および測定信号を利用するエラーを最小限にすることによって達成することができる。本明細書に記載されるような実装がオーディオ関連の目的のためにのみ使用されるのではなく、Ｌｉｎｕｘ（登録商標）システムのソフトウェアレイヤを通じて伝播する２つの信号間の一時的な不整合を解決しようとする、または減少させようとする、任意のシステムのために使用され得ることが認識されている。
【００１６】
コントローラ２０２は、適応制御戦略を用いて、このプロセスを測定信号および基準信号に基づき繰り返して実行し、所望の方式において制御手段２００をプラント２０４に向けて適合させる。しかしながら、固有のシステムエラーが原因で、または一貫性がないことが原因で、コントローラ２０２がプラント２０４を制御して所望の結果を達成することが完全にはできない場合があることが認識されている。上述されている適応制御手段２００は、何度でも実行されることができ、基準信号と測定信号との間で少なくとも比較的安定したレイテンシおよびタイミングを必要とする場合がある最適な方式における制御アクションを提供し、コントローラ２０２による制御下でプラント２０４について制御安定性および最適なパフォーマンスを確保することができる。例えば、図１に示される実施例などのＬｉｎｕｘ（登録商標）システム１０１において配信されるような、測定信号と基準信号との間のいかなる動的な時間／レイテンシ不整合問題も、コントローラ２０２（または図１に示されるようなコントローラ１１２）にパフォーマンスを低下させる、または不安定さえも引き起こす場合がある。しかしながら、固有のシステム（もしくはプラント）エラーが原因で、または一貫性がないことが原因で、コントローラ２０２がプラント２０４を制御して所望の結果を達成することが完全にはできない場合があることが認識されている。
【００１７】
図１に戻り参照して、アプリケーションレイヤ１０２は、例えば、音楽の再生ができるオーディオクライアントおよび関連したユーザプログラムを一般的に含む。これらのオーディオクライアントは、サウンドサーバにオーディオストリームを介して接続することができる。サーバレイヤ１０４（またはサウンドサーバ）は、ソフトウェアであることができ、オーディオデバイス、例えば、サウンドカードの使用、およびこれらへのアクセスを管理する。サーバレイヤ１０４は、シンクおよびソースハンドリングのためのバックグラウンドプロセスとして一般に実行することができる。サーバレイヤ１０４は、ＰｕｌｓｅＡｕｄｉｏ、または例えばＪＡＣＫなどのオーディオ接続キットとして実装されることができる。ＰｕｌｓｅＡｕｄｉｏは、一般的にさまざまなオペレーティングシステムのためのサウンドシステムである。ＰｕｌｓｅＡｕｄｉｏは、サウンドアプリケーション用のプロキシとして一般的に機能する。サーバレイヤ１０４をＰｕｌｓｅＡｕｄｉｏのために実装する場合、ＰｕｌｓｅＡｕｄｉｏが例えば、カーネルレイヤ１０８（またはＡＳＬＡレイヤ）などの下位ソフトウェアレイヤに接続するＵＢＵＮＴＵディストリビューションに利用されるサウンドサーバであり得ることが認識されている。ＰｕｌｓｅＡｕｄｉｏは、サーバ／クライアント接続性をアプリケーションレイヤ１０２内に提供する。ＪＡＣＫをいずれかの数のＬｉｎｕｘ（登録商標）アプリケーション中に含むことができる。
【００１８】
サウンドシステムレイヤ１０６は、実装のために利用されるのがＡＬＳＡか、ＯＳＳかに基づきＡＬＳＡおよびＯＳＳ用のライブラリを提供するソフトウェアを一般的に含む。カーネルまたはドライバレイヤ１０８は、サウンドドライバおよびサウンドデバイスを含むことができる。ＡＬＳＡに関連するカーネルレイヤ１０８を利用する場合、ＡＬＳＡカーネルレイヤ１０８は、マルチチャネルオーディオインタフェースをサポートし、ハードウェア制御を管理することについてアプリケーションプログラムインタフェース（ＡＰＩ）アクセスを提供することができる。ＡＬＳＡは、マルチプロセッサＬｉｎｕｘ（登録商標）ベースの組み込みシステム内の標準ソフトウェアレイヤであり、オーディオ−ハードウェア周辺機器と上位アプリケーションレイヤとの間のバッファハンドリングを備える、すべてのオーディオストリームおよびストリームミキシングを管理することができる。ＯＳＳに関連するカーネルレイヤ１０８を利用する場合、ＯＳＳカーネルレイヤ１０８は、Ｌｉｎｕｘ（登録商標）カーネルサウンドドライバおよびサウンドデバイスを含み、アプリケーションレイヤ１０２を実際のオーディオ−ハードウェア周辺機器と接続する。
【００１９】
さらに、システム１００は、入力信号をハードウェアレイヤ１１０に提供するハードウェアベースの入力デバイス（複数可）１２０を含む。入力デバイス１２０は、マイク、加速度センサなどのような、いずれかの数のセンサを含むことができる。さらに、システム１００は、出力信号をハードウェアレイヤ１１０から受信するハードウェアベースの出力デバイス１２２を含む。１つの実施例において、ハードウェアベースの出力デバイス１２２は、音響エコーキャンセラ（ＡＥＣ）、アクティブノイズキャンセラ（ＡＮＣ）システムなどのような１つのオーディオシステムについて少なくとも１つのコントローラを含むことができる。概して、システム１００が入力信号を入力デバイス１２０から受信し、入力信号がハードウェアレイヤ１１０、カーネルレイヤ１０８、サウンド−サブシステムレイヤ１０６、およびサーバレイヤ１０４を介してそのまま伝播する場合に、これらのようなレイヤ１０２、１０４、１０６、および１０８を実行するコントローラ１１２、サウンド−サブシステムレイヤ１０６、ならびにサーバレイヤ１０４によって実行される処理は、システム１００によって処理されるデータの、異なる別々の入力ストリームに関するレイテンシ問題を引き起こす可能性がある。
【００２０】
一般に、アプリケーションレイヤ１０２は、互いに独立して基準信号および測定信号を利用することができるコントローラユニット１２４を含む。例えば、基準信号および測定信号は、互いに、個々の、かつ別々のデータをそれぞれ含む（例えば、各信号間のデータは、合わせてパックされる、または追加される（すなわち、合わせてマージされる））。例えば、コントローラユニット１２４への入力は、センサ２０６によって提供されるような測定信号、および図２に記載されるような基準信号の信号に一般的に対応する。しかしながら、この場合、システム１００は、図２に記載されるような信号調整回路２０１を用いない。この場合、システム１００は、基準信号および測定信号を別々のデータストリームとしてバッファリングする。したがって、図１における測定信号および基準信号の個々のバッファリング（すなわち、動的バッファサイズ変更）により、さまざまなレイヤ１０２、１０４、１０６、および１０８において、これらの個々の信号を互いに、不整合にさせる、または非同期にさせる可能性がある。レイヤ１１０は、ハードウェアベースであることができるが、このレイヤ１１０は、基準信号と測定信号との間のレイテンシ問題に加わらない場合がある。
【００２１】
しかしながら、信号コントローラ出力またはプラント入力についてのデータストリームはレイヤ１０２、１０４、１０６、１０８および１１０によってダウンストリーム方式において処理されること、そしてこのような信号がアップストリーム処理のために基準信号として完全に、または部分的にループバックされることができることに留意されたい。さらに、レイヤ１０２、１０４、１０６、および１０８が測定信号および基準信号をアップストリーム方式において処理することに留意されたい。基準信号が信号コントローラ出力またはプラント入力に基づくことができると仮定すると、これは、上述されるように不整合または非同期に加えられる場合がある。概して、ハードウェアレイヤ１１０は、プログラマブルサブユニットを含むことができ、Ｌｉｎｕｘ（登録商標）システムにおけるハードウェアとして一般的に定義される。上述されるレイテンシにより、ハードウェアレイヤ１１０がプログラム可能であるが、決定論的で、静的であることを引き起こすことができる。レイヤ１０６より上のすべてのレイヤに加えてカーネルレイヤ１０８は、ソフトウェアベースのレイヤであることができ、これらのようなレイヤ１０２、１０４、１０６、１０８に帰するレイテンシは、動的であり、静的（またはこれらのようなレイヤ１０２、１０４、１０６、１０８内のオペレーティングシステム（ＯＳ）セットアップに起因する決定論的）ではないと仮定され得る。
【００２２】
概して、ハードウェアベースの入力デバイス１２０によって提供されるデータは、デジタルであることができる。ハードウェアベースの入力デバイス１２０は、いずれかの数のアナログ−デジタル変換器を含み、例えばＡＮＣが基準信号をも提供する場合に、デジタルデータを測定信号上に、またいくつかのコントローラアプリケーション内に提供することができ、本明細書のように、基準信号は、信号コントローラ出力またはプラント入力から逸脱しないが、信号調整回路２０１が基準信号および測定信号を合わせて、組み合わされた信号コントローラ入力中に加え、またはパックし、その信号をさまざまなレイヤ１１０、１０８、１０６、および１０４のアップストリームへ処理するために転送することを依然として必要とする（例えば、図５を参照されたい）。同様に、ハードウェアベースの出力デバイス１２２から送信されるデータは、デジタルであることができる。ハードウェアベースの出力デバイス１２２は、いずれかの数のデジタル−アナログ変換器（ＤＡＣ）を含み、デジタルデータを変換してアナログデータに戻すことができる。
【００２３】
図３は、１つの実施形態に従い、組み込み適応制御システム１００’を示す。システム１００’がモバイルデバイス（図示せず）、例えば携帯電話、ラップトップ、タブレットなどに（またはセルラー通信を可能にするいずれかの他のデバイスに）実装され得ることが認識されている。システム１００’は、モバイルデバイスのオーディオ処理デバイスに実装されることができる。このシステム１００は、ハードウェアレイヤ１１０に対して、またハードウェアベースの入力デバイス（複数可）１２０およびハードウェアベースの出力デバイス（複数可）１２２に対して、中間に置かれている信号調整回路２０１を一般的に含む。上述されるように、入力デバイス（複数可）１２０は、リスニング環境から測定音声データ（例えば、図２からの測定信号を参照する）を提供する、マイクロまたは加速度センサに対応することができる。また上述されるように、ハードウェアベースの出力デバイス１２２は、信号コントローラ出力またはプラント入力上のデジタルデータをアナログデータに変換するために、そして同じものを室内で、またはリスニング環境で任意のラウドスピーカーに提供するために、いずれかの数のＤ／Ａ変換器に加えてパワーアンプを含むことができる。上述されるように、基準信号は、信号コントローラ出力またはプラント入力に完全に、または部分的に対応することができる。加えて、ハードウェアベースの出力デバイス１２２はまた、音響エコーキャンセラ（ＡＥＣ）、アクティブノイズキャンセラ（ＡＮＣ）システムなどのようなオーディオシステムのために少なくとも１つのコントローラを含むことができる。信号調整回路２０１は、フィールドプログラマブルゲートアレイ（ＦＧＰＡ）、特定用途向け集積回路（ＡＳＩＣ）、デジタル信号プロセッサ（ＤＳＰ）などであることができる。図２の信号調整回路２０１と同様に、図３に示されるような信号調整回路２０１はまた、ミキサー２０３およびパック回路２０９を含み、基準信号および測定信号を組み合わせ、組み合わされたコントローラ入力データストリームを提供することができる。図３に示されるように、組み合わされたシステムデータストリームは、組み合わされた基準信号及び測定信号  ＳＩＧＮＡＬ（複数可）と称されることができる。上述されるように、基準信号は、図２に示されないが、完全に利用されることができる、またはコントローラ出力信号もしくはプラント入力信号から部分的に逸脱する（もしくは始まる）ことができる。
【００２４】
上述されるように、レイヤ１０２、１０４、１０６、および１０８は、ソフトウェアベースのレイヤであることができ、非決定論的（または時変）であるとみなされることができる。したがって、これらのようなレイヤ１０２、１０４、１０６、および１０８は、コントローラ１１２によって実行されるときに、動的バッファサイズ変更、および／またはレイテンシを処理することに起因する基準信号と測定信号との間の不整合を引き起こすことに一般的に寄与する可能性がある。しかしながら、信号調整回路２０１（例えば、ミキサー２０３および／またはパック回路２０９）がハードウェアベースであり、時間決定論的であると仮定すると、基準信号と測定信号の両方の信号を互いに信号調整回路２０１を介して組み合わせて、コントローラ入力信号と称される組み合わされた基準信号及び測定信号を提供する場合に、基準信号と測定信号との間のいかなる不整合をも緩和することができる、信号調整回路２０１をすべての非時間決定論的（または時変）レイヤ１０２、１０４、１０６、および１０８の前に一般的に利用する、または配置する。
【００２５】
例えば、レイヤ１０２、１０４、１０６、および１０８の間の典型的な動的バッファサイズ変更は、全体的なエンドツーエンドレイテンシを変更することができる。しかしながら、信号調整回路２０１の位置がＳＷレイヤ処理に関連する潜在的な動的バッファレイテンシ変更を過ぎて配置されていることから、信号調整回路２０１は、基準信号および測定信号を同期させることができ、組み合わされた基準信号及び測定信号のレイテンシは、一定であるとみなされることができる。例えば、組み合わされた基準信号及び測定信号に適用されるいずれかのレイテンシは、同じ方式において、基準信号および測定信号に影響する可能性があるため、相対的なレイテンシは、一定であるとみなされることができる。基準信号および測定信号は、組み合わされた基準信号及び測定信号に存在するときに、図２に記載されるように、基準信号および測定信号に対応することができる。同じことは、図２に記載されるように、コントローラ入力信号に対応することができる組み合わされた基準信号及び測定信号に当てはまることができる。信号調整回路２０１は、基準信号および測定信号を互いと（パック回路またはミキサーを介して）マージし、または互い組み合わせ、組み合わされたシステム入力（または組み合わされたシステムデータストリーム）をＳｏＣデバイス１１１に提供し、デバイス動作中に非決定論的ソフトウェアレイヤ１０２、１０４、１０６、および１０８の１つ以上の内のいかなる一時的な不整合をも防ぐ。
【００２６】
図４は、１つの実施形態に従い、ＡＥＣシステムに関連して使用される場合の適応制御システム１００’’の実施例を示す。サーバレイヤ１０４（またはＰｕｌｓｅＡｕｄｉｏデーモン）は、シンクレイヤ３００およびソースレイヤ３０２を一般的に含む。適応制御システム１００’’は、典型的なＰｕｌｓｅＡｕｄｉｏデーモンフレームワーク中に組み込まれている独立したシンクおよびソース処理の事例を一般的に示す。サーバレイヤ１０４のＰｕｌｓｅＡｕｄｉｏ  Ｉ／Ｏバッファは、同期していると仮定されることができない。
【００２７】
ハードウェアベースの入力デバイス（複数可）１２０は、ＡＥＣシステムと関連して使用される場合にマイクロホンまたは加速度センサ（示されない）から捕捉されるような音声データを測定信号上に提供することができる。捕捉された音声データは、所望の音声データに対応するが、室内で、またはリスニング環境内で捕捉される不要なエコーデータ（例えば、測定信号上のデータ）を含む可能性がある。信号調整回路２０１は、音声データをシステム入力信号から転送し、同じものをハードウェアベースの出力デバイス（複数可）１２２に提供し、図２に示されるようなプラント２０４を表している、音響経路にブロードキャストすることができる。上述されるように、基準信号は、システム入力信号に対応することができる。ＡＥＣの場合、システム入力信号上の音声データは、コントローラ動作から独立して再生される音楽データに対応することができるが、再生中にシステムまたはプラントに転送されると、不要なエコーとみなされる。信号調整回路２０１は、システム入力信号を基準信号と完全に、または部分的に混合し、これを測定信号と組み合わせ、エコーキャンセラをコントローラ内で可能にすることができる。ハードウェアベースの出力デバイス（複数可）１２２がシステム入力信号上のデジタルデータをアナログデータに変換するために、そして室内で、またはリスニング環境内で任意のラウドスピーカーに同じものを提供するために、任意の数のＤ／Ａコンバータに加えてパワーアンプを含むことができることが認識される。
【００２８】
信号調整回路２０１は、リアルタイムに、基準信号上のデータを測定信号上で測定されたマイクデータ（すなわち、不要なエコーを含む所望の音声）とパックして、または加えて、組み合わされた基準信号及び測定信号、またはコントローラ入力信号を提供することができる。マイクデータと基準データとの間のレイテンシが組み合わされた基準信号及び測定信号上で、またはコントローラ入力信号上で比較的に一定のままであることができる場合に、組み合わされた基準信号及び測定信号、またはコントローラ入力信号は、いかなる動的システム挙動に対してもロバストであるとみなされることができる。入力／出力（Ｉ／Ｏ）エンドツーエンドレイテンシは動的に変化することができるが、ＡＥＣ収束は、組み合わされた基準信号及び測定信号上のマイクデータと基準データとの間の安定した／一定である相対的なレイテンシによって保証されることができる。
【００２９】
図５は、１つの実施形態に従い、ＡＮＣシステムと関連して使用されるような適応制御システム１００’’’の実施例を示す。サーバレイヤ１０４（またはＰｕｌｓｅＡｕｄｉｏデーモン）は、シンクレイヤ３００およびソースレイヤ３０２を一般的に含む。適応制御システム１００’’’は、典型的なＰｕｌｓｅＡｕｄｉｏデーモンフレームワーク中に組み込まれる独立したシンクおよびソース処理の事例を概して示す。サーバレイヤ１０４のＰｕｌｓｅＡｕｄｉｏ  Ｉ／Ｏバッファは、同期していると仮定されることができない。
【００３０】
ハードウェアベースの入力デバイス（複数可）１２０は、ＡＮＣシステムと関連して使用される場合にマイクまたは加速度センサ（示されない）から捕捉されるような音声データを測定信号上に提供することができる。捕捉された音声データは、室内で、またはリスニング環境内で捕捉される所望の音楽または音声データ（例えば、測定信号上のデータ）に加えて不要なノイズに対応することができる。信号調整回路２０１は、コントローラ出力信号から音声データを転送し、同じものをハードウェアベースの出力デバイス（複数可）１２２に提供し、図２に示されるようなプラントを表しているノイズキャンセラのための音響経路にブロードキャストすることができる。上述されるように、基準信号は、コントローラ出力信号に対応しない場合があるが、図２に示されない、不要なノイズのみを提供する別のセンサによって提供されるような不要なノイズのみに対応することができる。ＡＮＣの場合、コントローラ出力信号上の音声データは、プラント２０４を介してノイズキャンセレーションのためにアンチノイズ信号を再生するため、アプリケーションレイヤ１０２内のコントローラ動作を介してオーディオソースに向かうループバックとして機能するアンチノイズデータに対応することができる。信号調整回路２０１は、基準信号を測定信号とマージし、コントローラによってプラント２０４を介してノイズキャンセレーションを可能にする。ハードウェアベースの出力デバイス（複数可）１２２がコントローラ出力信号上のデジタルデータをアナログデータに変換するために、そして同じものを室内で、またはリスニング環境内で、任意のラウドスピーカーに提供するために、任意の数のＤ／Ａコンバータに加えて、パワーアンプを含むことができることが認識される。
【００３１】
信号調整回路２０１は、リアルタイムに、測定信号上の測定されたマイクデータ（すなわち、不要なノイズを含む所望の音楽／音声）と、基準信号上のデータをパックし、または加え（すなわち、データをマージし）、組み合わされた基準信号及び測定信号、またはコントローラ入力信号を提供することができる。マイクロホンデータと基準データとの間のレイテンシが組み合わされた基準信号及び測定信号、またはコントローラ入力信号上で比較的に一定のままであることができる場合に、組み合わされた基準信号及び測定信号、またはコントローラ入力信号は、いかなる動的システム挙動に対してもロバストであるとみなされることができる。入力／出力（Ｉ／Ｏ）エンドツーエンドレイテンシが動的に変化する可能性があるが、ＡＮＣ収束は、組み合わされた基準信号及び測定信号上のマイクロホンデータと基準データとの間の安定した／一定である相対的なレイテンシによって保証されることができる。
【００３２】
測定信号、基準信号、組み合わされた基準信号及び測定信号、コントローラ入力信号、プラント入力信号およびコントローラ出力信号に対応するデータストリームは、ソフトウェアレイヤ１０２、１０４、１０６間の時分割多重化（ＴＤＭ）データストリーム、または内部リニアもしくはリングバッファとして実装されることができる。上記の図４と関連して記述される実施例について、ＴＤＭデータストリームは、入力データ（例えば、測定されたマイクからの音声データ）、出力データ（例えば、コントローラ出力信号からのデータ）、および基準信号からのデータによって部分的に充填される。システム１００’’と関連して記述されるような実施例において、ＴＤＭベースのデータストリームを１からＮ＋Ｍチャネル（またはデータのビット）によってパックされることができ、そこでＭは、測定されたマイクからの（またはハードウェアベースの入力デバイス（複数可）１２０からの）音声データに対応し、Ｎは、基準データに対応する。ＡＥＣの場合、理想的にエコーを完全にキャンセルし、さらなるアプリケーションサービスのために音声をシンクとして処理する、ＡＥＣコントローラプロセスの後に、マイクコンテンツは、所望の音声、および不要なエコーを含む可能性がある。概して、音楽は、ソース（デバイストランシーバミュージック）として機能することができる。デバイスが通信目的のために音声を、例えば、通話として受信するので、音声は、シンクとして機能することができる。ＡＮＣの場合、理想的にノイズを完全にキャンセルし、アンチノイズ信号をシンクとしてオーディオソースアプリケーションのために処理するＡＮＣコントローラプロセスの後に、マイクコンテンツは、所望の音楽／音声、および不要なノイズを含む可能性があるため、コントローラのアンチノイズ信号は、デバイス出力にループバックし、ノイズキャンセレーションを音響経路内で実行させることができる。
【００３３】
例示的な実施形態が上述されているが、これらの実施形態が本発明のすべての可能な形態を説明することは意図されていない。むしろ、本明細書において使用される言葉は、限定ではなく説明の言葉であり、さまざまな変更が本発明の趣旨および範囲から逸脱することなく行われることができることが理解される。加えて、さまざまな実装する実施形態の特徴を組み合わせ、本発明のさらなる実施形態を形成することができる。
【図１】
2020126237.tif 000002
【図２】
2020126237.tif 000003
【図３】
2020126237.tif 000004
【図４】
2020126237.tif 000005
【図５】
2020126237.tif 000006
【外国語明細書】
2020126237000001.pdf