関連出願
[0001]本特許は、2018年9月7日に出願された米国特許仮出願第62/728,677号、及び2018年10月12日に出願された米国特許仮出願第62/745,148号の優先権及び利益を主張する。米国特許仮出願第62/702,734号及び米国特許仮出願第62/745,148号は、その全体が引用により本明細書に組み込まれている。
開示の分野
[0002]本開示は一般には音量調整に関し、より詳細には、オーディオ分類を介した動的な音量調整のための方法及び装置に関する。
背景
[0003]近年、様々な特性の多数のメディアが、ますます増加するチャネルを使用して配信されている。これらのメディアは、より従来型のチャネル(たとえば、ラジオ)を使用して、又はより最近開発されたチャネルを使用して、たとえば、インターネットに接続されたストリーミングデバイスを使用するなどして、受信することができる。これらのチャネルが発展するにつれて、複数のソースからの音響(audio、オーディオ)を処理して出力することが可能なシステムも開発されている。たとえば、一部の自動車メディアシステムは、コンパクトディスク(CD)、ブルートゥース(登録商標)接続デバイス、ユニバーサルシリアルバス(USB)接続デバイス、Wi-Fi接続デバイス、補助入力、及び他のソースからメディアを配信することが可能である。
[0004]図1は、オーディオ分類を介した動的な音量調整のための本開示の教示に従って構築された例示的なシステムの概略図である。
[0005]図2は、図1のメディアユニットのさらなる詳細を示すブロック図である。
[0006]図3は、図1及び図2のメディアユニットが使用するための訓練されたモデルを提供することが可能なオーディオ分類エンジンを示すブロック図である。
[0007]図4は、図1及び図2のメディアユニット106を実装してオーディオ分類を介した動的な音量調整を実行するために使用することができる例示的な機械可読命令を表すフローチャートである。
[0007]図5は、図1及び図2のメディアユニット106を実装してオーディオ分類を介した動的な音量調整を実行するために使用することができる例示的な機械可読命令を表すフローチャートである。
[0008]図6は、図4及び図5の命令を実行して図1及び図2の例示的なメディアユニット106を実装することができる例示的なプロセッサプラットフォームの概略図である。
[0009]図は縮尺通りではない。図面(複数可)及び添付の明細書全体を通して、同一又は同様の部分を参照するために、可能な限り同じ参照番号を使用する。
詳細な説明
[0010]従来のオーディオメディアの実装では、異なるメディアに関連付けられたオーディオ信号は、異なる音量を有する場合がある。たとえば、あるCDのメディアは、他のCDのメディアとは大幅に異なる音量で録音及び/又はマスタリングされる場合がある。同様に、ストリーミングデバイスから取得されるメディアは、異なるデバイスから取得されるメディア、又は同じデバイスから異なるアプリケーションを介して取得されるメディアとは大幅に異なる音量レベルを有する場合がある。ユーザがますます様々な異なるソースからのメディアを聞くようになると、ソース間及び同じソースのメディア間の音量レベルの違いが非常に顕著になり、聴取者を苛立たせる可能性がある。
[0011]音量均一化のいくつかの従来のアプローチでは、ダイナミックレンジ圧縮器を利用して、音量閾値を満たすようにオーディオ信号のダイナミックレンジ全体を圧縮する。いくつかの従来の実装では、そのようなダイナミックレンジ圧縮は、オーディオ信号の音量閾値を満たすように、オーディオ信号の音量を継続的に監視して調整する。このような継続的な調整は、トラックの元のダイナミクスが大幅に改変されるので、オーディオ信号の聴取者の知覚にはっきりと分かる影響を及ぼす。いくつかの例では、ダイナミックレンジ圧縮により、(たとえば、オーディオにアーティファクトが導入されることによって)オーディオ信号の知覚品質が大幅に劣化する。
[0012]本明細書に開示した例示的な方法、装置、システム、及び製造品では、オーディオ分類を使用してオーディオ信号のカテゴリを特定し、続いて、オーディオ信号を目標音量範囲内に収めるために必要なダイナミックレンジ圧縮の量を最小化するように音量調整を実行する。本明細書に開示した例示的な方法、装置、システム、及び製造品は、オーディオ信号の分類とリアルタイムの入力オーディオ測定値との組み合わせを利用して、オーディオ信号に適用可能な目標ゲイン値を特定する。たとえば、オーディオ信号に関連付けられる分類グループを特定した後、(たとえば、音量ゲイン調整値を分類グループに関連付けるルックアップテーブルから)分類ゲイン値を取得することができる。さらに、オーディオ信号の入力音量を特定することができる。次いで、入力音量及び推奨される分類ゲイン値に基づいて、目標ゲイン値を特定することができる。目標ゲイン値は、音量を目標音量範囲(たとえば、-21dbFSから±1dbFS以内)に近づけるために入力オーディオ信号に適用される音量調整であり、その結果、ゲイン調整された信号が圧縮器に提供された場合に、ゲイン調整された信号を目標音量範囲内に収めるために必要な圧縮量が低減される。
[0013]本明細書に開示した例示的な方法、装置、システム、及び製造品では、入力オーディオ信号の分類と、オーディオ信号の入力音量とに基づいて目標ゲイン値を計算して、オーディオ信号の音量を目標音量範囲内に収めるために必要な圧縮量を低減する。いくつかの例では、入力オーディオ信号が最初に検出されると、入力オーディオ信号が分類され、入力オーディオ信号の音量が特定されるまでに、オーディオ信号の音量を目標音量範囲内に収めるように、オーディオ信号のダイナミックレンジが最初に圧縮される。いくつかの例では、オーディオ信号が最初に検出されたときに、オーディオ信号を調整するために圧縮のみを利用すると、聴取者は圧縮が、手動の音量調整によらないオーディオレベルの減少であると簡単に気付く場合がある。しかしながら、オーディオ信号の初期音量と、オーディオ信号の分類とが特定されると、オーディオ信号の音量を目標音量範囲内に収めるために必要な圧縮量を低減させるための目標ゲイン値が計算される。いくつかの例では、分類及び初期音量の特定は、最初の圧縮の使用が聴取者に気付かれないほど十分迅速に(たとえば、5秒以内、1秒以内などに)行うことができる。
[0014]本明細書に開示したいくつかの例示的な方法、装置、システム、及び製造品は、オーディオ信号のソースの変化を特定し、変化に対処する。いくつかの例では、圧縮の使用に加えて、又はその代わりに、初期音量調整が実行される。たとえば、オーディオ信号入力の変化(たとえば、オーディオ信号なしからオーディオ信号提示への変化、あるオーディオ信号入力ソースから他のオーディオ信号入力ソースへの変化など)に応答して、(たとえば、オーディオ信号のソースに固有の以前の音量調整設定に基づいて)初期音量レベルを特定することができ、初期音量レベル調整を実行することができる。いくつかの例では、初期音量レベル調整は「フェードイン」技術を使用して実行され、この技術は入力信号の変化後にオーディオ音量レベルを徐々に増加させるものである。いくつかの例では、初期音量レベル調整は、オーディオ入力信号のタイプ(たとえば、FMラジオ、AMラジオ、CD、補助オーディオソースなど)に関連付けられた、記憶された設定に基づくことができる。
[0015]本明細書に開示した例示的な方法、装置、システム、及び製造品は、オーディオ信号を複数の分類グループのうちの1つ又は複数に分類する。分類グループを特定する際に、分類グループの特性(たとえば、利用可能なヘッドルームの量、典型的なダイナミックレンジなど)を使用して、最小限の損失で(たとえば、最小限のダイナミックレンジ圧縮を利用して)オーディオ信号の音量を調整することができる。いくつかの例では、訓練データにおけるパターン認識を使用して、分類グループを識別することができる。たとえば、オーディオ信号は、信号内に表されている楽器、オーディオ信号が制作された年、音楽のジャンルなどの要因に基づいてグループ化することができる。訓練データがグループ化されると、ダイナミックレンジ値の分布、音量値の分布、又は他の任意のオーディオ特性などの特性が、分類グループに関連付けられて(たとえば、ルックアップテーブルに)記憶される。いくつかの例では、オーディオ信号を分類する場合に、(たとえば、オーディオ信号が属する1つの特定の分類グループを出力するのとは対照的に)確率分布を求めることができる。たとえば、分類処理は、オーディオ信号が1976年~1995年のドラムなしの音楽を表すグループに属する可能性が50%であり、オーディオ信号が1996年から現在までのドラムなしの音楽を表すグループに属する可能性が30%であり、オーディオ信号が1976年~1995年の合成ドラムを含む音楽を表すグループに属する可能性が18%であり、又は他のグループに属する可能性が2%であることを出力することができる。いくつかのそのような例では、音量調整を実行するために分類グループに関連付けられたゲイン値を選択することは、平均化技術を含むことができる(たとえば、各グループに関連付けられたゲイン値を特定し、オーディオ信号がそれぞれのグループに属する確率に応じて各値に重み付けを行う)。
[0016]本明細書に開示したいくつかの例示的な方法、装置、システム、及び製造品では、代表的な様々なオーディオ信号(たとえば、多数のジャンル、多数の期間などを表すもの)の音量プロファイルの大規模なコーパスを利用して、オーディオ信号の分類を実行するようにオーディオ信号分類器を訓練する。たとえば、音量プロファイルは、ある曲の中の複数の時間における音量値を含む。いくつかの例では、音量プロファイルに加えて、又はその代わりに、オーディオ信号の他のプロファイル及び/又は表現を利用して、オーディオ信号分類器を訓練することができる。いくつかの例では、クラスタリングを音量プロファイルに実行して、オーディオ信号分類器を訓練する。いくつかの例では、オーディオ信号分類器は、音量プロファイルの音量、ダイナミックレンジ、及び/又は他の任意のプロパティに基づいて音量プロファイルのクラスタを特定するように訓練される。オーディオ信号分類器は、音量プロファイルをダイナミックレンジのグループにクラスタリングすることができ、次いで、オーディオ信号分類器は、到来したオーディオ(たとえば、入力オーディオ信号)を分類グループのうちの1つ又は複数に割り当てることができる。
[0017]本明細書に開示した例示的な方法、装置、システム、及び製造品では、オーディオ信号の分類グループを特定した後、ゲイン値をオーディオ信号に適用することによって、オーディオ信号の音量レベルを調整することができる。ゲイン値は、分類グループに固有のものとすることができる。たとえば、分類グループが、(一部のポップミュージックなどのように)比較的狭い正規化されたダイナミックレンジを有するオーディオ信号に関連付けられている場合、大幅な音量調整を行って、オーディオ信号の音量レベルを目標音量範囲に近づけることができる(たとえば、トラック全体のおおよその音量の偏差を求めることが可能なため)。逆に、分類グループが、比較的広いダイナミックレンジを有するオーディオ信号に関連付けられている場合、より少ない音量調整を行って、オーディオ信号を可聴レベル内に維持することができる。
[0018]オーディオ信号に関連付けられた分類グループに基づくゲイン値の適用に続いて、圧縮を利用して、オーディオ信号の音量を目標音量範囲内に収めることができる。ダイナミックレンジ圧縮は全体的なオーディオ品質の低減(たとえば、オーディオ信号のいくらかの損失)をもたらす場合があるので、本明細書に開示した例示的な方法、装置、システム、及び製造品は、提示中のオーディオのタイプに固有の(たとえば、分類グループに固有の)ゲイン値を最初に適用することによって音量調整技術を改善し、したがって、オーディオ信号の音量レベルを目標音量範囲内に適合させるために必要なダイナミックレンジ圧縮の量を低減させる。
[0019]本明細書に開示したいくつかの例示的な方法、装置、システム、及び製造品では、動的な音量調整の状況でオーディオ信号が分類されると、オーディオ信号の特性がその分類グループから推定され、この特性を利用して、最小限の圧縮又は無圧縮で、オーディオ信号の音量を目標音量閾値に近づけるための目標ゲイン値が特定される。
[0020]本明細書に開示したいくつかの例示的な方法、装置、システム、及び製造品では、目標ゲイン値を特定する場合に、入力音量測定値が考慮される。たとえば、入力音量が-15dbFSであると特定され、目標音量範囲が-21dbFSから±1dbFS以内(たとえば、-20dbFS~-22dbFS)である場合、目標ゲイン値は、分類グループが不変であっても、入力音量が-10dbFSであると特定された場合よりも小さい負のゲイン値である必要がある。いくつかのそのような例では、目標ゲイン値を特定する場合に、入力音量測定値は分類ゲイン値よりも重く重み付けされ、その理由は、最終的に、特定のオーディオ信号の実際の入力音量レベルが、クラスに基づく予測よりも、音量を調整できる量をより示しているためである(たとえば、リアルタイムの測定値は、オーディオ信号のクラスに関連付けられた予測よりも正確な場合がある)。いくつかの例では、目標ゲイン値を計算するために、分類ゲイン値と入力音量との平均が求められる。たとえば、入力音量が-15dbFSであると特定され、分類ゲイン値(たとえば、分類グループのオーディオ信号の平均ダイナミックレンジに基づいて特定されるもの)が、音量を-6dbFSだけ調整できることを示しているが、目標音量範囲が-21dbFSから±1dbFSである場合、分類ゲイン値のみに依存すると、誤差の余地が極端に小さくなる(たとえば、ダイナミックレンジが予想よりも広い場合、音量はしばしば-020dbFS~22dbFSの目標音量範囲外になる可能性が高い)。代わりに、目標ゲイン値が入力音量と分類ゲイン値との中間(たとえば、平均)として計算される場合、目標ゲイン値は、依然として誤差の余地を残しながら、オーディオ信号の音量を目標ゲイン値に近づける。
[0021]本明細書に開示したいくつかの例示的な方法、装置、システム、及び製造品では、一定の間隔(たとえば、3秒ごと、10秒ごとなど)で入力音量レベルが測定され、一定の間隔で分類が実行される。入力音量の変化(たとえば、その間隔の平均入力音量の変化、その間隔の入力音量の偏差の変化)に応じて、及び/又は分類グループの変化に応じて、新しい目標ゲイン値を特定することができる。いくつかの例では、目標ゲイン値間を遷移する場合に、平滑化フィルタを利用して、2つのゲイン値間をスムーズに遷移することによって、各間隔での音量の顕著な変動を回避することができる。いくつかの例では、目標ゲイン値の大きい変化は、目標ゲイン値の比較的小さい変化よりも遅い速度で傾斜が与えられる。
[0022]本明細書に開示した例示的な方法、装置、システム、及び製造品は、オーディオ信号の音量レベルを目標音量範囲内に調整する。いくつかの例では、聴取者はその後、音量レベルを手動で(たとえば、音量つまみを回す、音量レベルを変更する音声命令を提供するなどして)調整することができ、この調整は次いで、音量調整されたオーディオ信号にゲイン値を適用することによって実施される。このように、聴取者は依然としてオーディオ信号を聞く音量を選ぶことができるが、異なるソース間のばらつき、トラック間のばらつきなどに合わせて調整するのではなく、一貫した標準的な音量レベルから(たとえば、目標音量範囲から)音量を選ぶことができる。したがって、本明細書に開示した技術は、入力オーディオを、一貫した音量範囲内にロックされるように調整することを可能にする。本明細書に開示したいくつかの例示的な方法、装置、システム、及び製造品では、手動の音量調整時に、動的な音量調整を中止することができる。たとえば、ユーザが音量レベルを手動で(たとえば、音量つまみを回す、音量レベルを変更する音声命令を提供するなどして)調整した場合、オーディオレベルの自動調整(たとえば、オーディオを分類し、分類に基づいてゲイン値を選択し、オーディオレベルを監視することなどによるもの)を中止することができ、ユーザはオーディオレベルを完全に制御することが可能になる。
[0023]本明細書に開示したいくつかの例示的な方法、装置、システム、及び製造品では、音量調整をさらに改善するために、オーディオ信号を識別することができる。たとえば、本明細書に開示したいくつかの例示的な技術では、オーディオ信号に関連するメタデータを取得するために、メディアを識別するためのオーディオ指紋が利用される。オーディオ指紋採取とは、テレビ放送、ラジオ放送、広告(テレビ及び/又はラジオ)、ダウンロード型のメディア、ストリーミングメディア、パッケージ済みメディアなど、メディアを識別するために使用される技術である。既存のオーディオ透かし技術は、メディア識別情報、及び/又はメディア識別情報にマッピング可能な識別子などの1つ又は複数のオーディオコード(たとえば、1つ又は複数の指紋)をオーディオ及び/又はビデオコンポーネントに埋め込むことによって、メディアを識別する。いくつかの例では、オーディオ又はビデオコンポーネントは、透かしを隠すのに十分な信号特性を有するように選択される。本明細書で使用する場合、「指紋」、「コード」、「署名」、又は「透かし」という用語を同義的に使用し、メディアを識別する目的で、又はチューニングなどの他の目的で(たとえば、パケット識別ヘッダ)、メディア(たとえば、番組又は広告)のオーディオ又はビデオに挿入又は埋め込み可能な任意の識別情報(たとえば、識別子)を意味するように定義する。本明細書で使用する場合、「メディア」とは、オーディオ及び/又は視覚(静止画又は動画)コンテンツ及び/又は広告を指す。指紋採取されたメディアを識別するために、指紋(複数可)を抽出及び使用して、参照指紋のテーブルにアクセスし、参照指紋はメディア識別情報にマッピングされている。
[0024]本明細書に開示した例では、車両のオーディオシステムのコンポーネント、又はそのオーディオシステムと通信するコンポーネントによって、音量調整を実行することができる。いくつかの例では、動的な音量調整器、又は動的な音量調整が可能な他のコンポーネントを含むメディアユニットを、車両のヘッドユニットに含めることができる。そのような例では、車両ヘッドユニットは、補助入力、CD入力、無線信号受信機入力、スマートデバイスからの外部ストリーム、ブルートゥース入力、ネットワーク接続(たとえば、インターネットへの接続)から、又は他の任意のソースを介して、オーディオ信号を受信することができる。たとえば、動的な音量調整は、ホームエンターテインメントシステムのメディアシステム上で実行することができ、複数のソース(たとえば、DVDプレーヤー、セットトップボックスなど)がオーディオ信号を伝達することができ、オーディオ信号は、ソース及びメディア間での音量レベルの正規化を試みるように動的に調整される。他の例では、動的な音量調整は、任意の状況で、又は任意のメディアデバイス(複数可)に対して実行することができる。
[0025]オーディオ分類を介した動的な音量調整のための例示的な手順では、正規化された大音量のポップミュージックに対応するオーディオ信号にアクセスする。オーディオ信号に関連付けられたオーディオ信号入力の変化を検出した後、ダイナミックレンジ圧縮器はオーディオを目標音量範囲(たとえば、-21dbFS)に圧縮する。この圧縮と並行して、オーディオ信号分類器は、オーディオ信号に対応する分類グループを特定する。たとえば、分類グループは、1996年から現在までの期間の合成ドラム及びベースを含む音楽に対応することができる。この分類グループは、特定の音量調整レベル(たとえば、-15dbFS)に関連付けることができる。いくつかの例では、分類グループに関連付けられたこの音量調整レベルは、現在のオーディオ音量レベルに基づいて特定される音量レベル調整値に加えて、又はその代わりに考慮することができる。この音量調整レベルに関連付けられた音量調整に続いて、少量のオーディオ圧縮を実行するだけで、目標音量範囲に到達することができる。たとえば、音量調整ステップによって音量が第1の値(たとえば、-17.50dbFS)に下がり、目標音量範囲が第1の値を超える第2の値(たとえば、-21dbFS)付近である場合、少量のオーディオ圧縮を実行して、オーディオ信号を第2の値に(たとえば、-21dbFS付近かつ目標音量範囲内に)することができる。したがって、信号を少量(たとえば、3.5dbFS)だけ低下させるダイナミックレンジ圧縮のみが実行され、オーディオ品質は、圧縮が必要な信号を元のオーディオ入力から目標音量範囲に低下させる(たとえば、オーディオ信号を-21dbFS圧縮する)よりも大幅に優れている。
[0026]図1は、動的な音量調整のための本開示の教示に従って構築された例示的なシステム100の概略図である。例示的なシステム100は、オーディオ信号をメディアユニット106に送信するメディアデバイス102、104を含む。メディアユニット106は、オーディオ信号を処理し、信号をオーディオアンプ108に送信し、続いて、オーディオアンプ108は、増幅されたオーディオ信号を出力して、出力デバイス110を介して提示する。
[0027]図1に示した例の例示的なメディアデバイス102は、ポータブルメディアプレーヤー(たとえば、MP3プレーヤー)である。例示的なメディアデバイス102は、メディアに対応するオーディオ信号を記憶又は受信し、オーディオ信号を他のデバイスに送信することが可能である。図1に示した例では、メディアデバイス102は、補助ケーブルを介してオーディオ信号をメディアユニット106に送信する。いくつかの例では、メディアデバイス102は、他の任意のインターフェースを介してオーディオ信号をメディアユニット106に送信することができる。
[0028]図1に示した例の例示的なメディアデバイス104は、モバイルデバイス(たとえば、携帯電話)である。例示的なメディアデバイス104は、メディアに対応するオーディオ信号を記憶又は受信し、オーディオ信号を他のデバイスに送信することが可能である。図1に示した例では、メディアデバイス104は、オーディオ信号をメディアユニット106に無線で送信する。いくつかの例では、メディアデバイス104は、Wi-Fi、ブルートゥース、及び/又は他の任意の技術を使用して、オーディオ信号をメディアユニット106に送信することができる。いくつかの例では、メディアデバイス104は、聴取者が車両で提示するメディアを選択するために、車両のコンポーネント又は他のデバイスとやりとりすることができる。メディアデバイス102、104は、オーディオ信号を記憶する、及び/又はオーディオ信号にアクセスすることが可能な任意のデバイスとすることができる。いくつかの例では、メディアデバイス102、104は、車両に統合することができる(たとえば、CDプレーヤー、ラジオなど)。
[0029]図1に示した例の例示的なメディアユニット106は、オーディオ信号を受信し、オーディオ信号を処理することが可能である。図1に示した例では、例示的なメディアユニット106は、メディアデバイス102、104からメディア信号を受信し、メディア信号を処理して動的な音量調整を実行する。例示的なメディアユニット106は、メディアに埋め込まれた識別子(たとえば、指紋、透かし、署名など)に基づいてオーディオ信号を識別することが可能である。例示的なメディアユニット106はさらに、オーディオ信号に関連付けられたメディアに対応するメタデータにアクセスすることが可能である。いくつかの例では、メタデータは、メディアユニット106の記憶デバイスに記憶される。いくつかの例では、メタデータは、他の場所から(たとえば、ネットワークを介してサーバから)アクセスされる。さらに、例示的なメディアユニット106は、メタデータに基づいて平均ゲイン値を特定及び適用して、音量閾値を満たすようにオーディオ信号の平均音量を調整することによって、動的な音量調整を実行することが可能である。例示的なメディアユニット106はさらに、出力デバイス110によって出力されているオーディオを監視して、リアルタイムにオーディオセグメントの平均音量レベルを求めることが可能である。オーディオ信号がメディアに対応するものとして識別されない場合、及び/又はオーディオ信号に関して音量情報を含むメタデータが利用可能でない場合、例示的なメディアユニット106は、所望の音量レベルを実現するためのオーディオ信号の圧縮を提供するダイナミックレンジ圧縮が可能である。いくつかの例では、例示的なメディアユニット106は、車両内の他のデバイス(たとえば、カーラジオヘッドユニット)の一部として含まれる。いくつかの例では、例示的なメディアユニット106は、ソフトウェアとして実装され、直接接続(たとえば、有線接続)又はネットワーク(たとえば、クラウド上で利用可能なもの)のいずれかを介して利用可能な他のデバイスの一部として含まれる。いくつかの例では、例示的なメディアユニット106は、オーディオアンプ108及び出力デバイス110に組み込むことができ、オーディオ信号の処理に続いて、オーディオ信号を単独で出力することができる。
[0030]図1に示した例の例示的なオーディオアンプ108は、メディアユニット106によって処理されたオーディオ信号を受信し、出力デバイス110による出力のために信号の適切な増幅を実行することが可能なデバイスである。いくつかの例では、オーディオアンプ108は、出力デバイス110と統合することができる。いくつかの例では、オーディオアンプ108は、メディアユニット106からの増幅出力値に基づいてオーディオ信号を増幅する。いくつかの例では、オーディオアンプ108は、聴取者からの入力(たとえば、車両の乗客又は運転手による音量セレクタの調整)に基づいてオーディオ信号を増幅する。
[0031]図1に示した例の例示的な出力デバイス110は、スピーカーである。いくつかの例では、出力デバイス110は、複数のスピーカー、ヘッドホン、又はオーディオ信号を聴取者に提示することが可能な他の任意のデバイスとすることができる。いくつかの例では、出力デバイス110は、視覚的要素も出力可能にすることができる(たとえば、スピーカー付きテレビ)。
[0032]図1に示した例示的なシステム100は、車両における動的な音量調整の実装を参照して説明しているが、例示的なシステム100に含まれるデバイスの一部又は全部は、任意の環境に任意の組み合わせで実装することができる。たとえば、システム100は家の娯楽室に存在することができ、メディアデバイス102、104は、ゲーム機、仮想現実デバイス、セットトップボックス、或いはメディアにアクセスする、及び/又はメディアを送信することが可能な他の任意のデバイスとすることができる。さらに、いくつかの例では、メディアは、視覚的要素も含むことができる(たとえば、テレビ番組、映画など)。
[0033]図2は、図1に示したメディアユニット106の例示的な実装のさらなる詳細を提供するブロック図200である。例示的なメディアユニット106は、オーディオ信号を受信し、オーディオ信号を処理して、オーディオ信号の音量を目標音量範囲内に動的に調整することが可能である。動的な音量調整に続いて、例示的なメディアユニット106は、音量調整されたオーディオ信号228をオーディオアンプ108に送信して、出力デバイス110によって出力される前に増幅されるようにする。
[0034]例示的なメディアユニット106は、例示的な入力オーディオ信号202と、例示的な入力信号検出器204とを含む。この信号検出器は、例示的な圧縮器ゲイン比較器206と、例示的なオーディオ音量/パワー比較器208と、例示的なオーディオサンプル比較器210とを含み、これらは全て、オーディオソースの変化が起こったか否かの判定212を行うために使用される。例示的なメディアユニット106は、例示的な入力音量検出器214、例示的なオーディオ信号分類器216、例示的な分類データベース218、例示的な音量調整器220、例示的なオーディオ信号識別器222、例示的なダイナミックレンジ圧縮器224、及び例示的なリアルタイムオーディオ監視器226をさらに含む。システムから結果的に得られる出力は、例示的な音量調整されたオーディオ信号228である。
[0035]例示的な入力オーディオ信号202は、処理及び出力されて提示されるオーディオ信号である。入力オーディオ信号202は、無線信号(たとえば、FM信号、AM信号、衛星無線信号など)、コンパクトディスク、補助ケーブル(たとえば、メディアデバイスに接続されるもの)、ブルートゥース信号、Wi-Fi信号、又は他の任意のメディアからアクセスすることができる。入力オーディオ信号202は、入力信号検出器204、オーディオ信号分類器216、及び/又はリアルタイムオーディオ監視器226によってアクセスされる。入力オーディオ信号202は、音量調整器220及び/又はダイナミックレンジ圧縮器224によって変換される。
[0036]例示的な入力信号検出器204は、入力オーディオ信号202を検出する。いくつかの例では、入力信号検出器204は、入力オーディオ信号202が新しい入力オーディオ信号に関連するものか又は新しい入力オーディオ信号ソースに関連するものか(たとえば、AM信号がFM信号に切り替わる、補助デバイス信号がCDに切り替わるなど)を検出する。いくつかの例では、入力信号検出器204は、メディアユニット106がオフ状態であった後に、入力オーディオ信号202が始まったときに(たとえば、メディアユニット106の電源がオンになり、入力オーディオ信号202が始まったときに)、入力オーディオ信号202を検出する。いくつかの例では、入力信号検出器204は、入力オーディオ信号202が新しい場合(たとえば、入力の変化を示す新しいタイプの入力オーディオ信号を表す場合、メディアユニットがこれまでに何のオーディオ信号も提示していなかった後に始まった信号を表す場合など)、オーディオ信号分類器216と通信して、分類処理を開始する。いくつかの例では、入力信号検出器204は、オーディオソースが変化したかを判定する。たとえば、入力信号検出器204は、例示的な圧縮器ゲイン比較器206、例示的な音量/パワー比較器208、及び例示的なオーディオサンプル比較器210を介して、オーディオ入力ソースが変化したかを判定することができ、これを例示的なソース変化判定器が使用して、オーディオソース信号が変化したかを判定する212。
[0037]例示的な圧縮器ゲイン比較器206は、ダイナミックレンジ圧縮器224の現在のゲインをダイナミックレンジ圧縮器224の以前のゲインと比較する。たとえば、圧縮器ゲイン比較器206は、入力オーディオ信号202の現在のサンプルブロックに関連付けられたダイナミックレンジ圧縮器224のゲインを、以前のサンプルブロック(たとえば、以前の3秒間のサンプル、以前の5秒間のサンプル、以前の10秒間のサンプルなど)に関連付けられたダイナミックレンジ圧縮器224の平均(たとえば、算術平均、中央値など)ゲインと比較することができる。いくつかの例では、圧縮器ゲイン比較器206は、ダイナミックレンジ圧縮器224の以前のゲインの平均に対するダイナミックレンジ圧縮器224の現在のゲインの比率を出力することができる。他の例では、圧縮器ゲイン比較器206は、ダイナミックレンジ圧縮器224の現在のゲインとダイナミックレンジ圧縮器224の以前の動的ゲインの平均との比較に関連する他の任意の適切な値(たとえば、差など)を出力することができる。
[0038]例示的な音量/パワー比較器208は、入力オーディオ信号202の現在のパワーを入力オーディオ信号202の以前のパワーと比較する。たとえば、パワー比較器208は、入力オーディオ信号202の現在のパワーを、以前のサンプルブロック(たとえば、以前の3秒間のサンプル、以前の5秒間のサンプル、以前の10秒間のサンプルなど)に関連付けられた入力オーディオ信号202の平均(たとえば、算術平均、中央値など)パワーと比較することができる。いくつかの例では、パワー比較器208は、入力オーディオ信号202の現在のサンプルの二乗平均平方根(RMS)パワーを、入力オーディオ信号202の以前のサンプルに関連するRMSパワー(複数可)と比較することができる。いくつかの例では、パワー比較器208は、メディアユニット106のピーク出力を照会して、オーディオサンプルのRMSパワーを求めることができる。いくつかの例では、パワー比較器208は、K重み付け(K-weighting)が適用された後、以前のRMSパワー(複数可)の平均に対する現在のRMSパワーの比率を出力することができる。他の例では、パワー比較器208は、入力オーディオ信号202の現在のRMSパワーと入力オーディオ信号202の以前のRMSパワー(複数可)の平均との比較に関連する他の任意の適切な値(たとえば、差など)を出力することができる。
[0039]例示的なオーディオサンプル比較器210は、入力オーディオ信号202のサンプルの現在の値を入力オーディオ信号202の以前の値と比較する。いくつかの例では、オーディオサンプル比較器210は、入力オーディオ信号202の現在のブロックのサンプルの最大振幅に基づいて、オーディオサンプルの値を特定する。いくつかの例では、オーディオサンプル比較器210は、オーディオサンプルの値を正規化された値(たとえば、1と-1の間など)として特定する。他の例では、オーディオサンプル比較器210は、任意の適切なスケールに基づいてオーディオサンプルの値を特定することができる。いくつかの例では、オーディオサンプル比較器210は、特定されたオーディオサンプル値の絶対値を求める。たとえば、オーディオサンプル比較器210は、入力オーディオ信号202の現在の最大オーディオサンプル値を、以前のサンプルブロック(たとえば、以前の3秒間のサンプル、以前の5秒間のサンプル、以前の10秒間のサンプルなど)に関連付けられた入力オーディオ信号202の平均(たとえば、算術平均、中央値など)オーディオサンプル値と比較することができる。いくつかの例では、オーディオサンプル比較器210は、以前のオーディオサンプルブロックの平均に対する現在の最大オーディオサンプル値の比率を出力することができる。他の例では、オーディオサンプル比較器210は、入力オーディオ信号202の現在のオーディオサンプルと、入力オーディオ信号202の以前のオーディオサンプルブロックの平均との比較に関連する他の任意の適切な値(たとえば、差など)を出力することができる。
[0040]例示的なソース変化判定器212は、例示的な圧縮器ゲイン比較器206、例示的なパワー比較器208、及び/又は例示的なオーディオサンプル比較器210の出力(複数可)に基づいて、入力オーディオ信号202のオーディオソースが変化したかを判定する。たとえば、ソース変化判定器212は、回帰分析(たとえば、線形回帰、二項回帰、最小二乗法、ロジスティック回帰など)を使用して、ソースの変化が発生したかを判定することができる。そのような例では、ソース変化判定器212はさらに、ラベル付き入力データに基づいて回帰分析を行うことができる。たとえば、ラベル付き入力データは、パワー比較、圧縮器ゲイン比較、及び/又はオーディオサンプル比較に対応する値からの分類の結果として、ソース変化あり又はソース変化なしの二分決定(binary decision、バイナリディシジョン)を行うことにより、オーディオソースが変化したかの表示を含むことができる。他の例では、ソース変化判定器212は、オーディオソースの変化が発生したかを判定するための他の任意の適切な予測モデル(たとえば、機械学習、ニューラルネットワークなど)を使用することができる。いくつかの例では、ソース変化判定器212は、ソースの変化が時間枠内(たとえば、以前の3秒間など)に発生したかを示すバイナリ値を出力することができる。たとえば、ソース変化判定器212は、ソースの変化が発生していないことを示すために「0」を出力することができ、ソースの変化が発生したことを示すために「1」を出力することができる。他の例では、ソース変化判定器212は、オーディオソースの変化が発生したことを示すための他の任意の適切な表示を出力することができる。
[0041]例示的な入力音量検出器214は、入力オーディオ信号202に関連する音量レベルを特定する。いくつかの例では、入力オーディオ信号202が新しい入力オーディオ信号であることを入力信号検出器204が示す場合に、入力音量検出器214は、入力オーディオ信号202に関連する初期入力音量レベル値を特定する。いくつかの例では、入力音量検出器214は、入力オーディオ信号が最初に受信された場合に、ダイナミックレンジ圧縮器224に音量レベルを提供して、入力オーディオ信号202のダイナミックレンジ圧縮を可能にする。たとえば、入力音量検出器214は、入力オーディオ信号202の初期音量レベルをダイナミックレンジ圧縮器224に提供することができ、次いで、ダイナミックレンジ圧縮器224は、入力オーディオ信号202の音量レベルが目標音量範囲内に収まるように、ダイナミックレンジを調整することができる。図示した例の入力音量検出器214は、一定の間隔で(たとえば、3秒間隔、5秒間隔などで)音量レベルを特定する。いくつかの例では、入力音量検出器214は、その間隔の平均(たとえば、算術平均、中央値など)音量レベルを求める。いくつかの例では、入力音量検出器214は、その間隔の音量レベルの偏差を求める。
[0042]例示的なオーディオ信号分類器216は、入力オーディオ信号の分類を特定する。いくつかの例では、オーディオ信号分類器216は、入力オーディオ信号202の特性を分析して、入力オーディオ信号202が属する分類グループを特定する。いくつかの例では、オーディオ信号分類器216は、ニューラルネットワークを利用してダイナミックレンジの予測を支援し、入力オーディオ信号202に適用される音量削減の量を音量調整器220に通知する。たとえば、オーディオ信号分類器216が利用する、及び/又はこれに組み込むことができる分類モデルを、ニューラルネットワークを利用して、訓練及び出力することができる。メディアユニット106が(たとえば、オーディオ信号分類器216などが)使用するための訓練されたモデルを提供することが可能な例示的なオーディオ分類エンジンを示すブロック図を図3に示している。いくつかの例では、訓練データに関連するオーディオ特性は、ニューラルネットワークによって分類グループを識別するために使用され、分類グループに関連付けて記憶される。たとえば、平均ダイナミックレンジ、ダイナミックレンジの偏差、平均音量、音量の平均偏差などのオーディオ特性を分類グループに対して特定し、分類データベース218及び/又は他のアクセス可能な場所に(たとえば、ルックアップテーブルに)記憶することができる。
[0043]いくつかの例では、オーディオ信号分類器216及び/又は図3のオーディオ分類エンジン300は、代表的な様々なオーディオ信号(たとえば、様々な楽器、様々なジャンルなどを表すもの)の音量プロファイル及び/又は他の表現にアクセスし、代表的な様々なオーディオ信号の音量プロファイル及び/又は他の表現に基づいてクラスを識別するように(たとえば、クラスタリングを使用して)オーディオ信号分類器216のモデルを訓練する。たとえば、音量プロファイル及び/又は他の表現は、音量及び/又はダイナミックレンジに基づいてクラスタリングすることができる。次いで、オーディオ信号分類器216は、入力オーディオ信号202を分析して、クラスに関連付けられた1つ又は複数のプロパティと比較することが可能な、入力オーディオ信号202の音量、ダイナミックレンジ、及び/又は他のプロパティを特定することによって、入力オーディオ信号202を分類することができる。
[0044]図示した例のオーディオ信号分類器216は、様々なタイプのオーディオ信号に関連付けられた複数の分類グループ(たとえば、9つの分類グループ、10個の分類グループなど)から1つ又は複数の分類グループを特定する。たとえば、分類グループは、入力オーディオ信号202によって表される音楽のジャンル、入力オーディオ信号202によって表される音楽の期間、入力オーディオ信号202において識別される異なる楽器などに関連付けることができる。いくつかの例では、分類グループは、読み上げコンテンツ(spoken content)、ポップミュージック、ロックミュージック、ヒップホップミュージックなどに関連付けることができる。一部の例示的な分類グループには、スピーチ、1975年以前のドラムなしの音楽、1976年~1995年のドラムなしの音楽、1996年~現在のドラムなしの音楽、1976年~1995年の合成ドラムを含む音楽、1996年~現在の合成ドラムを含む音楽、1975年以前の本物のドラムを含む音楽、1976年~1995年の本物のドラムを含む音楽、及び/又は1996年~現在の本物のドラムを含む音楽が含まれる。したがって、分類グループは、録音及び/又は再生機能の技術的な違いが、制作される音楽/サウンドの音量及び/又はダイナミックレンジの違いに対応する、異なる時代の音楽/サウンド制作に対応することができる。分類グループは、追加的又は代替的に、オーディオコンテンツの音量及び/又はダイナミックレンジの観察された(たとえば、ヒューリスティックに導出された)特性に基づくことができる。
[0045]オーディオ信号分類器216は、入力オーディオ信号202の任意の特性を利用して、入力オーディオ信号202を分類することができる。たとえば、オーディオ信号分類器216は、入力オーディオ信号202のスペクトル特性、入力オーディオ信号202の定Q変換(CQT:constant Q transform)特性、又は他の任意のパラメータを使用することができる。いくつかの例では、オーディオ信号の時間サンプル、スペクトログラム(複数可)、要約、変換、及び/又は記述が、オーディオ信号分類器216への入力として使用される。このような特性は、入力オーディオ信号の分類グループを特定するためのニューラルネットワークモデルに入力することができる。いくつかの例では、ニューラルネットワークモデルは、分類データベース218からアクセスすることができる。
[0046]図示した例のオーディオ信号分類器216は、単一のクラス(たとえば、スピーチ、1996年以降のドラムを含む音楽など)を出力するか、又は複数のクラスに関連する確率分布を出力することができる。いくつかの例では、オーディオ信号分類器216は、オーディオ信号に対応する確率が最も高いクラスを特定し、オーディオ信号がこのクラスに属するという表示を出力する。他の例では、オーディオ信号分類器216は、オーディオ信号がそれぞれのクラスに属することに関連する確率(たとえば、オーディオ信号が「スピーチ」クラスに属する可能性は60パーセント)を出力する。いくつかの例では、閾値パーセンテージを利用して、確率分布が出力される場合と比べた、単一のクラスが出力される場合を特定することができる。たとえば、オーディオ信号がスピーチクラスに属する可能性が90パーセントであるとオーディオ信号分類器216が識別した場合、この可能性は閾値パーセンテージを超える場合があり、オーディオ信号分類器216は、オーディオ信号をスピーチクラスに属するものとして識別することが可能になる。いくつかの例では、閾値パーセンテージが満たされない場合、確率分布を出力することができ、又はオーディオ信号分類器216は、オーディオ信号に関連付けられたクラスを識別できないことを示すことができる。
[0047]入力オーディオ信号202の分類グループを特定したことに応答して、オーディオ信号分類器216は、分類グループに関連付けられた分類ゲイン値を選択することができ、分類ゲイン値を音量調整器220及び/又はダイナミックレンジ圧縮器224に伝達することができる。いくつかの例では、オーディオ信号分類器216は、分類グループに関連付けられた1つ又は複数のルックアップテーブルから分類ゲイン値にアクセスする。いくつかの例では、分類ゲイン値は、1つ又は複数の分類グループに関連付けられた1つ又は複数のテーブルからの値の組み合わせとして特定される。たとえば、オーディオ信号が各分類グループに属する確率を示す確率分布をオーディオ信号分類器216が出力する場合、各グループに関連付けられたテーブルを取得することができ、各分類グループの相対的な確率に基づいてゲイン値又は他の調整値(たとえば、EQ値)を組み合わせて重み付けすることができる。
[0048]いくつかの例では、オーディオ信号分類器216は、分類グループを音量調整器220及び/又はダイナミックレンジ圧縮器224に提供し、次いでこれらは分類グループに関連付けられた調整パラメータにアクセスし、及び/又は調整パラメータを特定する。いくつかの例では、オーディオ信号分類器216は、(1)分類ゲイン値、及び/又は(2)オーディオの音量レベルが再分析されるべき時間に対応する期間を出力する。
[0049]例示的な分類データベース218は、オーディオ信号分類に関連するデータの保管場所である。いくつかの例では、分類データベース218は、オーディオ信号を分類するために使用されるモデル(たとえば、ニューラルネットワークモデル)を記憶する。いくつかの例では、図3に示し、さらに詳細に説明するオーディオ分類エンジンからモデルにアクセスし、及び/又はモデルを取得する。いくつかの例では、分類データベース218は、オーディオ信号、オーディオ指紋、及び/又はメディアユニット106によって利用される他の任意のデータを記憶することができる。分類データベース218は、ルックアップテーブル又は他の記憶手段、たとえば、分類グループに関連付けられたオーディオパラメータを記憶するためのものを記憶する。例示的な分類データベース218は、揮発性メモリ(たとえば、同期ダイナミックランダムアクセスメモリ(SDRAM)、ダイナミックランダムアクセスメモリ(DRAM)、ラムバスダイナミックランダムアクセスメモリ(RDRAM)など)、及び/又は不揮発性メモリ(たとえば、フラッシュメモリ)によって実装することができる。分類データベース218は、追加的又は代替的に、1つ又は複数のダブルデータレート(DDR)メモリ、たとえば、DDR、DDR2、DDR3、モバイルDDR(mDDR)などによって実装することができる。分類データベース218は、追加的又は代替的に、1つ又は複数の大容量記憶デバイス、たとえば、ハードディスクドライブ(複数可)、コンパクトディスクドライブ(複数可)、デジタル多用途ディスクドライブ(複数可)などによって実装することができる。図示した例では、分類データベース218を単一のデータベースとして示しているが、分類データベース218は、任意の数及び/又はタイプ(複数可)のデータベースによって実装することができる。さらに、分類データベース218に記憶されたデータは、任意のデータ形式、たとえば、バイナリデータ、コンマ区切りデータ、タブ区切りデータ、構造化クエリ言語(SQL)構造などとすることができる。
[0050]図2に示した例の例示的な音量調整器220は、オーディオ信号の音量レベルを調整する。いくつかの例では、例示的な音量調整器220は、オーディオ信号の音量を既知の音量値(たとえば、入力音量検出器214によって特定されるもの)から所望の音量値(たとえば、目標音量範囲付近の値)に変換する単一の平均ゲイン値を特定する。図示した例の音量調整器220は、入力音量検出器214及び/又はオーディオ信号分類器216と通信して、目標ゲイン値を特定する。音量調整器220は、オーディオ信号分類器216によって識別された1つ又は複数の分類グループに対応する分類ゲイン値と、入力音量検出器214によって検出された入力音量レベルとに基づいて(たとえば、分類ゲイン値と入力音量との平均を計算することによって)、目標ゲインを計算する。いくつかの例では、音量調整器220は、1つ又は複数の重みを、オーディオ信号分類器216からアクセスされる分類ゲイン値と、入力音量検出器214からアクセスされる入力音量とに適用する。
[0051]いくつかの例では、音量調整器220は、ソースの変化が検出された場合(たとえば、ソースがFM局から補助入力に変化した場合)、オーディオ信号に適用されるゲイン値をリセットする。いくつかのそのような例では、音量調整器220はゲイン値をゼロに設定し、入力音量検出器214及びオーディオ信号分類器216が新たに検出されたオーディオ信号に関する情報を音量調整器220に提供して目標ゲイン値を特定するまでに、ダイナミックレンジ圧縮器224は、圧縮を実行してオーディオ信号の音量を目標音量範囲内に調整する。
[0052]図示した例の音量調整器220は、異なる音量調整の間をスムーズに遷移する(たとえば、平滑化フィルタ、平均化フィルタなどを使用する)。いくつかの例では、音量調整器220が、目標ゲイン値の大きい変化が必要であると判定した場合、音量調整器220は、新しい目標ゲイン値にゆっくりと遷移する。逆に、音量調整器220は、目標ゲイン値のより小さい知覚しにくい変化の間をより迅速に遷移することができる。図示した例の音量調整器220は、単極平滑化フィルタを使用して、目標ゲイン値の間を遷移する。
[0053]いくつかの例では、音量調整器220は、入力音量検出器214からの更新された入力音量値、及び/又はオーディオ信号分類器216からの更新された分類出力が、以前の入力音量値及び/又は以前の分類出力に対する差分閾値を満たすか否かを判定する。いくつかのそのような例では、音量調整器220は、更新された入力音量値及び/又は更新された分類出力が、目標ゲイン値を計算するために使用される以前の値に対する差分閾値を満たす場合にのみ、新しい目標ゲイン値を特定する。
[0054]図示した例の例示的な音量調整器220は、目標ゲイン値をオーディオ信号に適用して、オーディオ信号を変換する。いくつかの例では、音量調整器220は、入力信号検出器204が入力オーディオ信号202を検出した場合に、フェードイン音量調整を使用して初期音量調整を実行する(たとえば、新しい信号が検出された場合に、音量を最小化し、その後徐々に音量を増加させる)。いくつかの例では、音量調整器220は、アクセスしている入力信号のタイプの以前の音量値に基づいて、初期音量値を設定することができる。たとえば、入力オーディオ信号202がFMオーディオ信号である場合、音量調整器220は、FMオーディオ信号に利用された以前の音量レベルを特定し、現在の初期音量をこの値に設定することができる。音量調整器220は、入力オーディオ信号202の初期音量を独立して調整することができ、又はダイナミックレンジ圧縮器224と連携して、入力オーディオ信号202を最初に検出したときに調整することができる。
[0055]図2に示した例の例示的なオーディオ信号識別器222は、入力オーディオ信号202に対応するメディアを識別する。いくつかの例では、メディアユニット106は、オーディオ信号識別器222を含まなくてもよく、オーディオ信号分類器216による分類のみに基づいて入力オーディオ信号202を修正することができる。いくつかの例では、オーディオ信号識別器222は、オーディオ信号に埋め込まれたメディア識別子(たとえば、指紋)と、既知の又は参照オーディオ署名との比較を実行して、オーディオ信号のメディアを特定する。いくつかの例では、例示的なオーディオ信号識別器222は、一致する参照メディア識別子を見つけることができる。そのような例では、オーディオ信号識別器222は、入力オーディオ信号202に含まれるメディアに固有の識別情報を音量調整器220及び/又はダイナミックレンジ圧縮器224に渡して、入力オーディオ信号202を調整することができる。いくつかの例では、オーディオ信号識別器222は、外部データベース(たとえば、中心施設のもの)とやりとりして、一致する参照署名を見つけることができる。いくつかの例では、オーディオ信号識別器222は、内部データベース(たとえば、分類データベース218など)とやりとりして、一致する参照署名を見つけることができる。
[0056]図2に示した例の例示的なダイナミックレンジ圧縮器224は、入力オーディオ信号202を圧縮することが可能である。いくつかの例では、ダイナミックレンジ圧縮器224は、入力オーディオ信号202が、目標音量閾値(たとえば、所望の音量レベルに関連付けられたもの)を満たす平均音量レベルを有するように、オーディオ圧縮を実行する。いくつかの例では、ダイナミックレンジ圧縮器224は継続的にアクティブであり、音量調整器220によって行われた任意の音量調整の後に入力オーディオ信号202の圧縮を実行して、入力オーディオ信号202を目標音量閾値内(たとえば、-21dbFSから±0.5dbFS以内)に収める。いくつかの例では、ダイナミックレンジ圧縮器224は、入力オーディオ信号202が目標音量閾値内に収まるよう調整されるようにする際の最終ステップとして機能する。いくつかの例では、入力オーディオ信号202に対して実行されるダイナミックレンジ圧縮の量は、音量調整されたオーディオ信号228の出力品質に反比例する(たとえば、動的な音量圧縮が大きいほど、音量調整されたオーディオ信号228の品質が低下し、たとえば、損失が多くなる)。
[0057]図2に示した例の例示的なリアルタイムオーディオ監視器226は、リアルタイムの音量測定データを収集する。たとえば、リアルタイムオーディオ監視器226は、現在のオーディオ音量レベルをある期間(たとえば、750ミリ秒)の平均として特定することができる。いくつかの例では、リアルタイムオーディオ監視器226は、監視期間(たとえば、10秒、1分など)の間、入力オーディオ信号202を継続的に監視する。そのような例では、リアルタイムオーディオ監視器226は、監視期間の間、音量レベルを分析して、音量調整器220又はダイナミックレンジ圧縮器224のいずれかによる後続の調整が必要か否かを判定することができる。いくつかの例では、リアルタイムオーディオ監視器226は、入力オーディオ信号202の持続時間の間、入力オーディオ信号202を継続的に監視する。いくつかの例では、リアルタイムオーディオ監視器226は、ある期間(たとえば、750ミリ秒)の平均音量レベルが目標音量範囲内(たとえば、-21dbFSから±0.5dbFS以内)に収まっているか否かを判定する。音量レベルが目標音量範囲内に収まっていないことに応答して、オーディオ信号分類器216は、入力オーディオ信号202の特性を再分析して、入力オーディオ信号202の再分類を試みることができる。いくつかの例では、ある期間の平均音量レベルが目標音量範囲内に収まっていないとリアルタイムオーディオ監視器226が判定したことに応答して、音量調整器220及び/又はダイナミックレンジ圧縮器224は、入力オーディオ信号202をさらに調整する。
[0058]図示した例のリアルタイムオーディオ監視器226は、タイマーを含み、及び/又はタイマーにアクセスして、オーディオ信号分類器216によって出力された以前の分類以降の期間が更新時間閾値を満たすか否かを判定する。いくつかの例では、更新時間閾値は操作者によって設定される。たとえば、リアルタイムオーディオ監視器226は、3秒の更新時間閾値で構成することができ、すなわち、オーディオ信号分類器216は、3秒間隔でオーディオ信号を再分類することになる(たとえば、3秒ごとに、過去3秒間に対して分類処理を実行する)。追加的又は代替的に、図示した例の入力音量検出器214は、最後の分類以降、及び/又は最後の入力音量計算以降の期間(たとえば、前の例では3秒間)のオーディオ信号の入力音量(たとえば、平均入力音量)を特定する。いくつかのそのような例では、オーディオ信号を再分類した後、及び/又は新しい入力音量を特定した後、音量調整器220は、新しい分類及び/又は新しい入力音量に基づいて、新しい目標ゲイン値を特定することができる。
[0059]図2のメディアユニット106を実装する例示的な方法を図4に示しているが、図2に示した要素、処理、及び/又はデバイスのうちの1つ又は複数を組み合わせる、分割する、再配置する、省略する、排除する、及び/又は他の任意の方法で実装することができる。さらに、図2の例示的なソース変化判定器212、例示的な入力音量検出器214、例示的なオーディオ信号分類器216、例示的な分類データベース218、例示的な音量調整器220、例示的なオーディオ信号識別器222、例示的なダイナミックレンジ圧縮器224、例示的なリアルタイムオーディオ監視器226、及び/又は、より一般的には、例示的なメディアユニット106によって使用される例示的な入力信号検出器204、例示的な圧縮器ゲイン比較器206、例示的な音量/パワー比較器208、及び例示的なオーディオサンプル比較器210は、ハードウェア、ソフトウェア、ファームウェア、並びに/或いはハードウェア、ソフトウェア、及び/又はファームウェアの任意の組み合わせによって実装することができる。したがって、たとえば、図2の例示的なソース変化判定器212、例示的な入力音量検出器214、例示的なオーディオ信号分類器216、例示的な分類データベース218、例示的な音量調整器220、例示的なオーディオ信号識別器222、例示的なダイナミックレンジ圧縮器224、例示的なリアルタイムオーディオ監視器226、及び/又は、より一般的には、例示的なメディアユニット106によって使用される例示的な入力信号検出器204、例示的な圧縮器ゲイン比較器206、例示的な音量/パワー比較器208、及び例示的なオーディオサンプル比較器210はいずれも、1つ又は複数のアナログ又はデジタル回路(複数可)、論理回路、プログラマブルプロセッサ(複数可)、プログラマブルコントローラ(複数可)、グラフィックス処理ユニット(複数可)(GPU(複数可))、デジタルシグナルプロセッサ(複数可)(DSP(複数可))、特定用途向け集積回路(複数可)(ASIC(複数可))、プログラマブルロジックデバイス(複数可)(PLD(複数可))、並びに/或いはフィールドプログラマブルロジックデバイス(複数可)(FPLD(複数可))によって実装することができる。純粋にソフトウェア及び/又はファームウェアの実装を含む本特許の装置又はシステムの請求項のいずれかを読む場合、図2の例示的なソース変化判定器212、例示的な入力音量検出器214、例示的なオーディオ信号分類器216、例示的な分類データベース218、例示的な音量調整器220、例示的なオーディオ信号識別器222、例示的なダイナミックレンジ圧縮器224、例示的なリアルタイムオーディオ監視器226、及び/又は、より一般的には、例示的なメディアユニット106によって使用される例示的な入力信号検出器204、例示的な圧縮器ゲイン比較器206、例示的な音量/パワー比較器208、及び例示的なオーディオサンプル比較器210のうちの少なくとも1つは、ソフトウェア及び/又はファームウェアを含む、メモリ、デジタル多用途ディスク(DVD)、コンパクトディスク(CD)、ブルーレイディスクなどの非一時的(non-transitory、ノントランジトリ)コンピュータ可読記憶デバイス又は記憶ディスクを含むように本明細書に明示的に定義する。またさらに、図1の例示的なメディアユニット106は、図2に示したものに加えて、又はその代わりに、1つ又は複数の要素、処理、及び/又はデバイスを含むことができ、並びに/或いは、図示した要素、処理、及びデバイスのうちのいずれか又は全てを2つ以上含むことができる。本明細書で使用する場合、「通信する」という句は、その変形を含めて、直接通信並びに/或いは1つ又は複数の中間コンポーネントを介した間接通信を含み、直接の物理的な(たとえば、有線の)通信及び/又は常時通信を必要とせず、むしろさらに、定期的な間隔、スケジュールされた間隔、非定期的な間隔、及び/又は1回限りのイベントでの選択的な通信を含む。
[0060]図3は、図1及び図2のメディアユニット106が使用するための訓練されたモデルを提供することが可能なオーディオ分類エンジン300を示すブロック図である。深層学習ネットワークであれ、他の経験/観察に基づく学習システムであれ、機械学習技術を使用して、たとえば、結果を最適化すること、画像内のオブジェクトを見つけること、音声を理解して音声をテキストに変換すること、検索エンジンの結果の関連性を向上させることなどができる。多くの機械学習システムは、初期の特徴及び/又はネットワークの重みが種として与えられ、機械学習ネットワークの学習及び更新を通じて修正されるが、深層学習ネットワークは、分析に「有効な」特徴を識別するように自身を訓練する。多層アーキテクチャを使用すると、深層学習技術を採用した機械は、従来の機械学習技術を使用した機械よりも適切に生データを処理することができる。様々なレイヤの評価又は抽象化を使用することで、相関性の高い値又は特徴的なテーマのグループのデータを調べることが容易になる。
[0061]ニューラルネットワークであれ、深層学習ネットワークであれ、及び/又は他の経験/観察に基づく学習システム(複数可)であれ、機械学習技術を使用して、たとえば、最適な結果を生成すること、画像内のオブジェクトを見つけること、音声を理解して音声をテキストに変換すること、検索エンジンの結果の関連性を向上させることなどができる。深層学習は、線形変換及び非線形変換を含む複数の処理レイヤを有するディープグラフを使用してデータの高レベルの抽象化をモデル化するための一連のアルゴリズムを使用する機械学習のサブセットである。多くの機械学習システムは、初期の特徴及び/又はネットワークの重みが種として与えられ、機械学習ネットワークの学習及び更新を通じて修正されるが、深層学習ネットワークは、分析に「有効な」特徴を識別するように自身を訓練する。多層アーキテクチャを使用すると、深層学習技術を採用した機械は、従来の機械学習技術を使用した機械よりも適切に生データを処理することができる。様々なレイヤの評価又は抽象化を使用することで、相関性の高い値又は特徴的なテーマのグループのデータを調べることが容易になる。
[0062]たとえば、畳み込みニューラルネットワーク(CNN)を利用する深層学習は、畳み込みフィルタを使用してデータをセグメント化することによって、データ内の学習済みの観察可能な特徴を見つけて識別する。CNNアーキテクチャの各フィルタ又はレイヤは、データの選択性及び不変性を高めるように入力データを変換する。データのこの抽象化により、機械は、分類しようとしているデータの特徴に焦点を合わせ、無関係な背景情報を無視することが可能になる。
[0063]深層学習は、多くのデータセットには、低レベルの特徴を包含する高レベルの特徴が含まれているという条件で機能する。たとえば、画像を調べる場合、オブジェクトを探すのではなく、探しているオブジェクトを形成するパーツを形成するモチーフを形成するエッジを探す方が効率的である。これらの特徴の階層は、多くの異なる形式のデータで見出すことができる。
[0064]学習された観察可能な特徴には、教師あり学習の間に機械によって学習されたオブジェクト及び定量化可能な規則性が含まれる。十分に分類されたデータの大規模なセットが提供された機械は、新しいデータの分類の成功に関連して、特徴を区別して抽出する態勢がより整っている。
[0065]転移学習を利用する深層学習機械は、データの特徴を人間の専門家によって確認された特定の分類に適切に結び付けることができる。逆に、同じ機械は、人間の専門家から誤った分類を知らされた場合、分類のパラメータを更新し得る。設定及び/又は他の構成情報は、たとえば、設定及び/又は他の構成情報の学習された使用によってガイドすることができ、システムがより多く(たとえば、繰り返し、及び/又は複数のユーザによって)使用されるにつれて、所与の状況に対して、設定及び/又は他の構成情報のばらつき及び/又は他の可能性の数を低減することができる。
[0066]例示的な深層学習ニューラルネットワークを、たとえば、専門家が分類したデータのセットで訓練することができる。このデータのセットはニューラルネットワークの最初のパラメータを構築し、これが教師あり学習の段階になる。教師あり学習の段階中に、ニューラルネットワークを、所望の動作が達成されたか否かについてテストすることができる。
[0067]所望のニューラルネットワークの動作が達成されると(たとえば、機械が指定された閾値に従って動作するように訓練された、など)、機械を配備して使用することができる(たとえば、「実際の」データで機械をテストするなどする)。動作中に、ニューラルネットワークの分類を(たとえば、専門家のユーザ、エキスパートシステム、参照データベースなどによって)確認又は拒否して、ニューラルネットワークの動作を改善し続けることができる。そして、例示的なニューラルネットワークはニューラルネットワークの動作を特定する分類のパラメータが、進行中の相互作用に基づいて更新されるので、転移学習の状態になる。特定の例では、ニューラルネットワーク302などのニューラルネットワークは、オーディオ分類スコアリングエンジン304などの他の処理に直接的なフィードバックを提供することができる。特定の例では、ニューラルネットワーク302はデータを出力し、データは(たとえば、クラウドなどを介して)バッファリングされ、他の処理に提供される前に検証される。
[0068]図3の例では、ニューラルネットワーク302は、分類訓練データに関連する以前の結果データから入力を受け取り、オーディオ信号に関連付けられる分類グループを予測するためのアルゴリズムを出力する。ネットワーク302は、何らかの初期相関を種として与えることができ、次いで、進行中の経験から学習することができる。いくつかの例では、ニューラルネットワーク302は、少なくとも1つの分類訓練データからフィードバックを継続的に受ける。図3の例では、オーディオ分類エンジン300の動作寿命を通じて、ニューラルネットワーク302はフィードバックを介して継続的に訓練され、例示的なオーディオ分類スコアリングエンジン304は、ニューラルネットワーク302に基づいて、及び/又は所望に応じて追加の分類訓練データに基づいて更新することができる。ネットワーク302は、役割、場所、状況などに基づいて学習及び進化することができる。
[0069]いくつかの例では、ニューラルネットワーク302によって生成されたモデルの正確度は、例示的なオーディオ分類スコアリングエンジン検証器306によって特定することができる。そのような例では、オーディオ分類スコアリングエンジン304及びオーディオ分類スコアリングエンジン検証器306のうちの少なくとも一方は、分類訓練データのセットを受け取る。さらに、そのような例では、オーディオ分類スコアリングエンジン304は、分類検証データに関連する入力を受け取り、分類検証データに関連する1つ又は複数のオーディオ分類を予測する。予測された結果は、オーディオ分類スコアリングエンジン検証器306に配られる。オーディオ分類スコアリングエンジン検証器306は、分類検証データに関連付けられた既知のオーディオ分類を追加で受け取り、既知のオーディオ分類を、オーディオ分類スコアリングエンジン304から受け取った予測された分類と比較する。いくつかの例では、この比較により、ニューラルネットワーク302によって生成されたモデルの正確度が得られる(たとえば、95回の比較が一致となり、5回が誤りとなった場合、モデルは95%正確である、など)。ニューラルネットワーク302が所望の正確度に達すると(たとえば、ネットワーク302が訓練され、配備の準備ができると)、オーディオ分類スコアリングエンジン検証器306は、モデルを図2のオーディオ信号分類器216に出力して、分類訓練データ及び/又は分類検証データ以外のオーディオを分類する際に使用できるようにすることができる。
[0070]図2のメディアユニット106を実装するための例示的なハードウェア論理、機械可読命令、ハードウェア実装の状態機械、及び/又はそれらの任意の組み合わせを表すフローチャートを、図4及び図5に示す。機械可読命令は、図6に関連して以下で説明する例示的なプロセッサプラットフォーム600に示すプロセッサ612などのコンピュータプロセッサによって実行される実行可能プログラム又は実行可能プログラムの一部とすることができる。プログラムは、CD-ROM、フロッピーディスク、ハードドライブ、DVD、ブルーレイディスク、又はプロセッサ612に関連付けられたメモリなどの非一時的コンピュータ可読記憶媒体に記憶されたソフトウェアで具現化することができるが、プログラム全体及び/又はその一部は、代替的に、プロセッサ612以外のデバイスによって実行し、及び/又はファームウェア若しくは専用ハードウェアで具現化することができる。さらに、図4及び図5に示したフローチャートを参照して例示的なプログラムを説明しているが、例示的なメディアユニット106を実装する他の多くの方法を代替的に使用することができる。たとえば、ブロックの実行順序を変更することができ、及び/又は記載したブロックの一部を変更する、排除する、又は組み合わせることができる。追加的又は代替的に、ブロックのいずれか又は全ては、ソフトウェア又はファームウェアを実行せずに対応する動作を実行するように構成される1つ又は複数のハードウェア回路(たとえば、ディスクリート及び/又は集積アナログ及び/又はデジタル回路、FPGA、ASIC、比較器、演算増幅器(オペアンプ)、論理回路など)によって実装することができる。
[0071]上記のように、図4及び図5の例示的な処理は、非一時的コンピュータ及び/又は機械可読媒体、たとえば、ハードディスクドライブ、フラッシュメモリ、読み取り専用メモリ、コンパクトディスク、デジタル多用途ディスク、キャッシュ、ランダムアクセスメモリ、並びに/或いは情報が任意の期間記憶される(たとえば、長期間、永続的に、短い瞬間の間、一時的にバッファリングするため、及び/又は情報をキャッシュするため)他の任意の記憶デバイス又は記憶ディスクなどに記憶された実行可能命令(たとえば、コンピュータ及び/又は機械可読命令)を使用して実装することができる。本明細書で使用する場合、非一時的コンピュータ可読媒体という用語は、任意のタイプのコンピュータ可読記憶デバイス及び/又は記憶ディスクを含み、伝搬信号を除外し、伝送媒体を除外するように明示的に定義する。
[0072]「含む(Including)」及び「備える(comprising)」(並びにそれらの全ての形及び時制)は、本明細書ではオープンエンドの用語として使用する。したがって、ある請求項が、任意の形の「含む(include)」又は「備える(comprise)」(たとえば、備える(comprises)、含む(includes)、備える(comprising)、含む(including)、有する(having)、など)を前文として、又は任意の種類の請求項の記述内で使用している場合は常に、対応する請求項又は記述の範囲から外れることなく追加の要素、用語などが存在できることを理解されたい。本明細書で使用する場合、「少なくとも」という句を、請求項の前文などにおける移行語として使用している場合、「備える(comprising)」及び「含む(including)」という用語がオープンエンドであるのと同様に、その句はオープンエンドである。「及び/又は」という用語は、たとえば、A、B、及び/又はCなどの形で使用される場合、A、B、Cの任意の組み合わせ又はサブセット、たとえば、(1)Aのみ、(2)Bのみ、(3)Cのみ、(4)AとB、(5)AとC、(6)BとC、及び(7)AとBとCを指す。本明細書において、構造、コンポーネント、アイテム、オブジェクト、及び/又は物を説明する文脈で使用する場合、「A及びBの少なくとも1つ」という句は、(1)少なくとも1つのA、(2)少なくとも1つのB、並びに(3)少なくとも1つのA及び少なくとも1つのB、のうちのいずれかを含む実装を指すものとする。同様に、本明細書において、構造、コンポーネント、アイテム、オブジェクト、及び/又は物を説明する文脈で使用する場合、「A又はBの少なくとも1つ」という句は、(1)少なくとも1つのA、(2)少なくとも1つのB、並びに(3)少なくとも1つのA及び少なくとも1つのB、のうちのいずれかを含む実装を指すものとする。本明細書において、処理、命令、アクション、アクティビティ、及び/又はステップの実施又は実行を説明する文脈で使用する場合、「A及びBの少なくとも1つ」という句は、(1)少なくとも1つのA、(2)少なくとも1つのB、並びに(3)少なくとも1つのA及び少なくとも1つのB、のうちのいずれかを含む実装を指すものとする。同様に、本明細書において、処理、命令、アクション、アクティビティ、及び/又はステップの実施又は実行を説明する文脈で使用する場合、「A又はBの少なくとも1つ」という句は、(1)少なくとも1つのA、(2)少なくとも1つのB、並びに(3)少なくとも1つのA及び少なくとも1つのB、のうちのいずれかを含む実装を指すものとする。
[0073]図1及び図2のメディアユニット106を実装するための、オーディオ分類を介した動的な音量調整を実施するために実行可能な例示的な機械可読命令を図4及び図5に示す。前述の図及び関連する説明を参照して、例示的な機械可読命令400は、ブロック402から始まる。ブロック402において、例示的なメディアユニット106は、オーディオ信号入力の変化を検出する。いくつかの例では、入力信号検出器204が、オーディオ信号入力の変化を検出する。たとえば、オーディオ信号が開始した場合があり(たとえば、メディアユニット106がこれまでにアクセスしていたオーディオ信号はなく、新しいものが開始した)、又はオーディオ信号が変更された場合がある(たとえば、FM無線信号がAM無線信号に変更された)。ブロック402の実行については、図5に関連して以下でより詳細に説明する。
[0074]ブロック404において、例示的なメディアユニット106は、目標音量範囲を満たすように入力オーディオ信号202を圧縮する。いくつかの例では、ダイナミックレンジ圧縮器224が、目標音量範囲を満たすように入力オーディオ信号202を圧縮する。
[0075]ブロック406において、例示的なメディアユニット106は、入力オーディオ信号202の分類グループを特定する。いくつかの例では、オーディオ信号分類器216が、入力オーディオ信号の分類グループを特定する。いくつかの例では、オーディオ信号分類器216は、入力オーディオ信号の1つ又は複数の特性(たとえば、CQT値)と、訓練された機械学習モデルとの比較に基づいて分類グループを特定する。オーディオ信号分類器216は、追加的又は代替的に、1つ又は複数の分類グループに関連する確率分布を求めることができる。
[0076]ブロック408において、例示的なメディアユニット106は、入力オーディオ信号202の入力音量を特定する。いくつかの例では、入力音量検出器214が、入力オーディオ信号202の入力音量を特定する。いくつかの例では、入力音量検出器214は、ある期間(たとえば、3秒、5秒など)にわたる入力オーディオ信号202の平均入力音量を求める。いくつかの例では、入力音量検出器214は、ある期間にわたる入力オーディオ信号202の音量の偏差を求める。いくつかの例では、入力音量検出器214は、1つ又は複数の瞬間音量値を測定する。
[0077]ブロック410において、例示的なメディアユニット106は、入力オーディオ信号202の分類グループに関連付けられたルックアップテーブルを利用して、分類ゲイン値を特定する。いくつかの例では、オーディオ信号分類器216は、オーディオ信号分類器216によって入力オーディオ信号202に関連付けられるように特定された1つ又は複数の分類グループに関連付けられたルックアップテーブルを利用して、分類ゲイン値を特定する。いくつかの例では、分類ゲイン値は、分類グループを表す単一の値である(たとえば、分類グループの訓練データで観察された平均ダイナミックレンジに基づくもの、分類グループの訓練データで観察された平均音量に基づくものなど)。いくつかの例では、分類ゲイン値は、オーディオ信号分類器216によって出力された確率分布に基づいて求められる(たとえば、入力オーディオ信号202が分類グループのうちの1つ又は複数に属する確率に基づいて、1つ又は複数のゲイン値が計算される)。
[0078]ブロック412において、例示的なメディアユニット106は、入力音量及び分類ゲイン値に重み付けして、目標ゲイン値を特定する。いくつかの例では、音量調整器220は、第1の重みを入力音量に適用し、第2の重みを分類ゲイン値に適用し、続いて、重み付けされた入力音量と、重み付けされた分類ゲイン値とに基づいて目標ゲイン値を特定する。いくつかの例では、入力音量は、分類ゲイン値の予測とは対照的に、オーディオ信号の実際の状態を示すので、音量調整器220は、分類ゲイン値より大きい重みを入力に適用する。いくつかの例では、音量調整器220は、目標ゲイン値を入力音量測定値と目標音量範囲との間の値として特定する。いくつかの例では、音量調整器220は、入力音量と、分類ゲイン値を適用して得られる音量レベルとの平均を計算し、目標分類ゲイン値は、入力オーディオ信号202の音量をこの平均音量レベルにするために必要なゲインとして特定される。
[0079]ブロック414において、例示的なメディアユニット106は、平滑化フィルタを使用して、目標ゲイン値をオーディオ信号に適用する。いくつかの例では、音量調整器220が、平滑化フィルタを使用して、目標ゲイン値を入力オーディオ信号202に適用する。音量調整器220は、異なるタイプのフィルタ(たとえば、メディアンフィルタ、カルマンフィルタなど)を利用して、第1のゲイン値及び更新されたゲイン値(たとえば、分類及び/又は入力音量が更新された場合のもの)の間、又はゲイン値なし及びゲイン値あり(たとえば、新しいオーディオ信号が検出された場合)の間の遷移を平滑化することができる。
[0080]ブロック416において、例示的なメディアユニット106は、目標音量範囲を満たすように圧縮値を調整する。いくつかの例では、ダイナミックレンジ圧縮器224が、目標音量範囲を満たすように圧縮値を調整する。たとえば、音量調整器220が、入力オーディオ信号202に適用されるゲイン値を増加させた場合、ダイナミックレンジ圧縮器224は、入力オーディオ信号202を目標音量範囲内に収めるために必要なダイナミックレンジ圧縮が少なくて済むので、圧縮値を減少させることができる。逆に、音量調整器220が、入力オーディオ信号202に適用されるゲイン値を減少させた場合、ダイナミックレンジ圧縮器224は、入力オーディオ信号202を目標音量範囲内に収めるためにより多くのダイナミックレンジ圧縮が必要とされるので、圧縮値を増加させることができる。
[0081]ブロック418において、例示的なメディアユニット106は、最後の分類以降の時間が更新時間閾値を満足又は超過しているか否かを判定する。いくつかの例では、リアルタイムオーディオ監視器226が、最後の分類が実行されてからの時間が更新時間閾値を満足又は超過しているか否かを判定する。いくつかの例では、リアルタイムオーディオ監視器226は、最後の入力音量計算が行われてからの時間、及び/又は音量調整器220によって最後の音量調整が実行されてからの時間が更新時間閾値を満足又は超過しているか否かを判定する。最後の分類以降の時間が更新時間閾値を満足又は超過していることに応答して、処理はブロック424に移る。逆に、最後の分類以降の時間が更新時間閾値を満足も超過もしていないことに応答して、処理はブロック420に移る。
[0082]ブロック420において、例示的なメディアユニット106は、オーディオ入力ソースの変化が発生したかを判定する。いくつかの例では、入力信号検出器204が、オーディオ入力ソースの変化が発生したかを判定する(たとえば、入力ソースがFMラジオから補助入力に変化した、入力ソースがCDからAMラジオに変化した、など)。オーディオ入力ソースの変化が発生したことに応答して、処理はブロック422に移る。逆に、オーディオ入力ソースの変化が発生していないことに応答して、処理はブロック418に移る。ブロック420の実行については、図5に関連して以下でより詳細に説明する。
[0083]ブロック422において、例示的なメディアユニット106は、ゲイン値をリセットする。いくつかの例では、音量調整器220が、ゲイン値をリセットする。たとえば、音量調整器220は、(異なる入力ソースからの以前のオーディオ信号に対して特定された)以前の目標ゲイン値が、新しいオーディオ信号に対してもはや有効ではない場合があるので、ゲイン値をゼロに設定することができる。したがって、(たとえば、分類及び入力音量の特定に続いて)新しい目標ゲイン値が特定されるまでに、ゲイン値は1にリセットされ、ダイナミックレンジ圧縮器224は、目標音量範囲を満たすように入力オーディオ信号202を圧縮する。
[0084]ブロック424において、例示的なメディアユニット106は、最後の分類以降の期間にわたる入力音量を特定する。いくつかの例では、入力音量検出器214が、最後の分類以降の期間にわたる入力音量を特定する。たとえば、リアルタイムオーディオ監視器226が3秒の更新間隔で構成されている場合、(たとえば、ブロック418において)更新間隔の全期間が経過すると、入力音量検出器214は、更新間隔の入力音量を特定する。いくつかの例では、更新間隔の間の平均入力音量が求められる。
[0085]ブロック426において、例示的なメディアユニット106は、最後の分類以降の期間にわたるオーディオ信号に基づいて、更新された分類グループを特定する。いくつかの例では、オーディオ信号分類器216が、最後の分類以降の期間にわたるオーディオ信号に基づいて、更新された分類グループを特定する。たとえば、リアルタイムオーディオ監視器226が3秒の更新間隔で構成されている場合、最後の分類から3秒が経過すると、オーディオ信号分類器216は、オーディオ信号の1つ又は複数の特性を分析して、更新された分類グループを特定する。いくつかの例では、更新された分類グループは、以前に特定された分類グループと同じである。
[0086]ブロック428において、例示的なメディアユニット106は、動的音量が有効であるか否かを判定する。たとえば、メディアユニット106の操作者は、(たとえば、スイッチを介して、メディアユニット106の設定を介してなど)動的音量を有効又は無効にすることができる。動的音量が有効になっていることに応答して、処理はブロック410に移る。逆に、動的音量が有効になっていないことに応答して、処理は終了する。
[0087]図5は、図4のブロック402及び/又はブロック420を実行するための例示的な処理500を示すフローチャートである。例示的な処理500は、ブロック502から始まる。ブロック502において、圧縮器ゲイン比較器206は、現在の圧縮器ゲインを最近の過去の圧縮器ゲインと比較する。たとえば、圧縮器ゲイン比較器206は、入力オーディオ信号202の現在のサンプルに関連付けられたダイナミックレンジ圧縮器224のゲインを、以前のサンプルブロック(たとえば、以前の3秒間のサンプル、以前の5秒間のサンプル、以前の10秒間のサンプルなど)に関連付けられたダイナミックレンジ圧縮器224の平均(たとえば、算術平均、中央値など)ゲインと比較することができる。いくつかの例では、圧縮器ゲイン比較器206は、以前のサンプルブロック(たとえば、以前の3秒間のサンプル、以前の5秒間のサンプル、以前の10秒間のサンプルなど)に関連付けられたダイナミックレンジ圧縮器224の平均(たとえば、算術平均、中央値など)ゲインに対する、入力オーディオ信号202の現在のサンプルブロックに関連付けられたダイナミックレンジ圧縮器224の現在のゲインの比率を出力することができる。
[0088]ブロック504において、パワー比較器208は、入力オーディオ信号202の現在の音量/パワーを、オーディオ信号の最近の過去の音量/パワー(複数可)と比較する。たとえば、パワー比較器208は、入力オーディオ信号202の現在のRMSパワーを、以前のサンプルブロック(たとえば、以前の3秒間のサンプル、以前の5秒間のサンプル、以前の10秒間のサンプルなど)に関連付けられた入力オーディオ信号202の平均(たとえば、算術平均、中央値など)パワーと比較することができる。いくつかの例では、パワー比較器208は、ピークメータ出力を照会して、RMSパワーを特定することができる。いくつかの例では、パワー比較器208は、以前のRMSパワー(複数可)の平均に対する現在のRMSパワーの比率を出力することができる。
[0089]ブロック506において、オーディオサンプル比較器210は、現在のオーディオサンプルブロックの最大値を最近のオーディオサンプル値(複数可)と比較する。たとえば、オーディオサンプル比較器210は、入力オーディオ信号202の現在のオーディオサンプル値を、以前のサンプルブロック(たとえば、以前の3秒間のサンプル、以前の5秒間のサンプル、以前の10秒間のサンプルなど)に関連付けられた入力オーディオ信号202の平均(たとえば、算術平均、中央値など)オーディオサンプル値と比較することができる。いくつかの例では、オーディオサンプル比較器210は、以前のサンプルブロックの平均に対する現在のオーディオサンプル値の比率を出力することができる。
[0090]ブロック508において、ソース変化判定器212は、オーディオサンプル比較、圧縮器ゲイン比較、及びパワー比較を分析して、ソースの変化が発生したかを判定する。たとえば、ソース変化判定器212は、回帰分析(たとえば、線形回帰、二項回帰、最小二乗法、ロジスティック回帰など)を使用して、ソースの変化が発生したかを判定することができる。他の例では、ソース変化判定器212は、ソースの変化が発生したかを判定するために他の任意の適切な手段(たとえば、ニューラルネットワークなど)を使用することができる。
[0091]ブロック510において、ソース変化判定器212は、ソースの変化が発生したことをRMS比較、圧縮器ゲイン比較、及び/又はオーディオサンプル比較が示しているか否かを判定する。ソースの変化が発生したことをRMS比較、圧縮器ゲイン比較、及び/又はオーディオサンプル比較が示していると、ソース変化判定器212がロジスティック回帰又は他の分類方法を介して判定した場合、処理500はブロック512に進む。ソースの変化が発生していないことをRMS比較、圧縮器ゲイン比較、及び/又はオーディオサンプル比較が示しているとソース変化判定器212が判定した場合、処理500はブロック514に進む。
[0092]ブロック512において、ソース変化判定器212は、ソースの変化が発生したことを示す。たとえば、ソース変化判定器212は、入力信号検出器204に、ソースの変化が発生したことをメディアユニット106に示させることができる。
[0093]ブロック514において、ソース変化判定器212は、ソースの変化が発生していないことを示す。たとえば、ソース変化判定器212は、入力信号検出器204に、ソースの変化が発生していないことをメディアユニット106に示させることができる。その後、処理500は終了する。
[0094]図6は、図4の命令を実行して図1及び図2のメディアユニット106を実装するように構成される例示的なプロセッサプラットフォーム600のブロック図である。プロセッサプラットフォーム600は、たとえば、サーバ、パーソナルコンピュータ、ワークステーション、自己学習機械(たとえば、ニューラルネットワーク)、モバイルデバイス(たとえば、携帯電話、スマートフォン、アイパッド(iPad)(登録商標)などのタブレット)、携帯情報端末(PDA)、インターネット家電、DVDプレーヤー、CDプレーヤー、デジタルビデオレコーダー、ブルーレイプレーヤー、ゲーム機、パーソナルビデオレコーダー、セットトップボックス、ヘッドセット若しくは他のウェアラブルデバイス、又は他の任意のタイプのコンピューティングデバイスとすることができる。
[0095]図示した例のプロセッサプラットフォーム600は、プロセッサ612を含む。図示した例のプロセッサ612はハードウェアである。たとえば、プロセッサ612は、任意の所望のファミリ又はメーカー製の1つ又は複数の集積回路、論理回路、マイクロプロセッサ、GPU、DSP、又はコントローラによって実装することができる。ハードウェアプロセッサは、半導体ベース(たとえば、シリコンベース)のデバイスとすることができる。この例では、プロセッサは、図2の例示的なソース変化判定器212例示的な入力音量検出器214、例示的なオーディオ信号分類器216、例示的な分類データベース218、例示的な音量調整器220、例示的なオーディオ信号識別器222、例示的なダイナミックレンジ圧縮器224、例示的なリアルタイムオーディオ監視器226、及び/又は、より一般的には、例示的なメディアユニット106によって使用される、例示的な入力信号検出器204、例示的な圧縮器ゲイン比較器206、例示的な音量/パワー比較器208、及び例示的なオーディオサンプル比較器210を実装する。
[0096]図示した例のプロセッサ612は、ローカルメモリ613(たとえば、キャッシュ)を含む。図示した例のプロセッサ612は、バス618を介して揮発性メモリ614及び不揮発性メモリ616を含むメインメモリと通信する。揮発性メモリ614は、同期ダイナミックランダムアクセスメモリ(SDRAM)、ダイナミックランダムアクセスメモリ(DRAM)、ラムバス(RAMBUS)(登録商標)ダイナミックランダムアクセスメモリ(RDRAM(登録商標))、及び/又は他の任意のタイプのランダムアクセスメモリデバイスによって実装することができる。不揮発性メモリ616は、フラッシュメモリ及び/又は他の任意の所望のタイプのメモリデバイスによって実装することができる。メインメモリ614、616へのアクセスは、メモリコントローラによって制御される。
[0097]図示した例のプロセッサプラットフォーム600はまた、インターフェース回路620を含む。インターフェース回路620は、任意のタイプのインターフェース規格、たとえば、イーサネット(登録商標)インターフェース、ユニバーサルシリアルバス(USB)、ブルートゥース(Bluetooth)(登録商標)インターフェース、近距離通信(NFC)インターフェース、及び/又はPCIエクスプレスインターフェースなどによって実装することができる。
[0098]図示した例では、1つ又は複数の入力デバイス622がインターフェース回路620に接続される。入力デバイス(複数可)622により、ユーザはデータ及び/又はコマンドをプロセッサ612に入力することが可能になる。入力デバイス(複数可)は、たとえば、オーディオセンサ、マイクロフォン、カメラ(静止画又はビデオ)、キーボード、ボタン、マウス、タッチスクリーン、トラックパッド、トラックボール、アイソポイント、及び/又は音声認識システムによって実装することができる。
[0099]また、1つ又は複数の出力デバイス624が図示した例のインターフェース回路620に接続される。出力デバイス624は、たとえば、ディスプレイデバイス(たとえば、発光ダイオード(LED)、有機発光ダイオード(OLED)、液晶ディスプレイ(LDC)、ブラウン管ディスプレイ(CRT)、インプレーススイッチング(IPS)ディスプレイ、タッチスクリーンなど)、触覚出力デバイス、プリンター及び/又はスピーカーによって実装することができる。したがって、図示した例のインターフェース回路620は、典型的には、グラフィックスドライバカード、グラフィックスドライバチップ、及び/又はグラフィックスドライバプロセッサを含む。
[00100]図示した例のインターフェース回路620はまた、送信機、受信機、送受信機、モデム、住居用ゲートウェイ、無線アクセスポイント、及び/又はネットワーク626を介した外部のマシン(たとえば、任意の種類のコンピューティングデバイス)とのデータ交換を容易にするためのネットワークインターフェースなどの通信デバイスを含む。通信は、たとえば、イーサネット接続、デジタル加入者線(DSL)接続、電話回線接続、同軸ケーブルシステム、衛星システム、見通し線無線システム、携帯電話システムなどを介することができる。
[00101]図示した例のプロセッサプラットフォーム600はまた、ソフトウェア及び/又はデータを記憶するための1つ又は複数の大容量記憶デバイス628を含む。そのような大容量記憶デバイス628の例には、フロッピーディスクドライブ、ハードドライブディスク、コンパクトディスクドライブ、ブルーレイディスクドライブ、独立ディスク冗長アレイ(RAID)システム、及びデジタル多用途ディスク(DVD)ドライブが含まれる。
[00102]図4の機械実行可能命令632は、大容量記憶デバイス628、揮発性メモリ614、不揮発性メモリ616、及び/又はCD又はDVDなどの取り外し可能な非一時的コンピュータ可読記憶媒体に記憶することができる。
[00103]上記から、異なる特性を有するメディアをほぼ同じ音量で再生できるようにメディアの音量を調整しつつ、この音量を実現するために必要とされる圧縮量を最小限に抑える例示的な方法、装置、及び製造品を開示していることが理解されよう。従来の音量均等化の実装は圧縮のみに依存しており、その結果、オーディオ信号にはっきりと分かる変化が生じるが、本明細書に開示した例は、オーディオ信号をインテリジェントに分類し、たとえば、ゲイン値で大幅に改変可能な比較的狭いダイナミックレンジを有するオーディオ信号と、より多くの圧縮を必要とする場合があるより広いダイナミックレンジを有するオーディオ信号とを区別する、オーディオ信号に関連付けられた分類に基づいて平均ゲイン値を特定することを可能にする。本明細書に開示した例示的な技術は、入力音量測定値と、オーディオ信号の分類に関連するパラメータとの組み合わせを利用して、リアルタイムに入力オーディオ信号の音量をインテリジェントに調整する。本明細書に開示した例では、(たとえば、オーディオ信号の分類の変化、観測された入力音量の変化などのために)初期分析後に音量調整を補正する必要がある場合に、音量レベルを継続的に調整する技術を説明している。本明細書に開示した例示的な技術は、オーディオ信号入力の変化の後に、オーディオ信号の音量レベルを最初に調整する技術をさらに含む。そのような技術は、ユーザにはほぼ知覚不可能であり、異なる又は同様のソースからの異なるメディアを実質的に同じ音量で再生して、シームレスなメディア提示体験を可能にするので、従来の実装よりも有利である。
[00104]いくつかの例では、本発明の動的音量のように、例示的なオーディオダイナミックレンジ圧縮器を常にアクティブにして、信号を特定の範囲(たとえば、-21dbFS)に下げることができる。他の例では、オーディオダイナミックレンジ圧縮器を一定時間アクティブにすることができる。
[00105]いくつかの例では、本発明の動的音量のように、例示的なリアルタイム音量検出器を入力に適用して、1つ又は複数の間隔(たとえば、750ミリ秒間隔)にわたる現在の平均レベルを測定することができる。そのような例では、現在の平均レベルを初期及び進行中の推測として使用して、音量をどれだけ減少させることができるかをガイドすることができる。
[00106]いくつかの例では、ニューラルネットワークベースの分類器は、ダイナミックレンジの予測を支援することもでき、適用可能な音量の減少を通知する。これは、最初は、改善の可能性がある現在のカテゴリ分類器(たとえば、9つの分類器、15個の分類器など)に基づくことができる。いくつかの例では、現在のカテゴリ分類器の数量を増やすことにより、異なるリアルタイム性及びニューラルネットワークのアプローチを使用するダイナミックレンジ予測器をより正確にすることができる。各例において、音量を減少可能な量に関連する精度を高めることができる。
[00107]いくつかの例では、目標は、圧縮器が到達可能な特定のレベル(たとえば、-12dbFS)の近くまで音量を減少させることである。減少量が特定されると、単極平滑化フィルタを使用して、入力の現在のフル音量から特定された量まで下げることができる。圧縮器は、平均して特定のレベル(たとえば、-21dbFS)に音量を保持し続けるが、入力を下げる必要がある量は、量を目標まで減少させているので、少なくすることができる。
[00108]本明細書に開示した方法、装置、及びシステムの動作の説明例では、十分に正規化された大音量のポップミュージックが、入力を介して配信され得る。圧縮器は0.0dbFSの素材を-21dbFSまで下げることができる。実質的に並行して、入力音量検出器は、入力が平均で-1dbFSで流れていると判定し、分類器は、1996年から現在までの合成ドラム及びベースを含む音楽が提示されていると判定する。このカテゴリは-15dbFSの削減量を生成し、音量検出器は-20dbFSを生成する。2つの値は平均化され、信号を-17.50dbFSだけ減少させることができ、基準値の-21dbFSに到達するために、さらに3.5デシベルだけ減少させることができる。圧縮器が(たとえば、上記の減少に基づいて)閾値より3.5デシベル大きい信号を低下させるので、圧縮器のみが利用される場合に行われるはずの、閾値より21デシベル高い信号を低下させることと比較して、オーディオ品質が改善される。
[00109]オーディオ分類を介した動的な音量調整のための例示的な方法、装置、システム、及び製造品を本明細書に開示している。さらなる例及びそれらの組み合わせは、以下を含む。例1は、ニューラルネットワークを使用して、第1の音量レベルに関連するオーディオ信号のパラメータを分析して、オーディオ信号に関連付けられる分類グループを特定するオーディオ信号分類器と、オーディオ信号の入力音量を特定する入力音量検出器と、オーディオ信号にゲイン値を適用する音量調整器であって、ゲイン値が分類グループ及び入力音量に基づき、ゲイン値が第1の音量レベルを第2の音量レベルに修正する、音量調整器と、オーディオ信号に圧縮値を適用するダイナミックレンジ圧縮器であって、圧縮値が第2の音量レベルを、目標音量閾値を満たす第3の音量レベルに修正する、ダイナミックレンジ圧縮器と、を備える、装置を含む。
[00110]例2は、オーディオ信号のソースが変化したかを判定するソース変化判定器をさらに含む、例1に記載の装置を含む。
[00111]例3は、ソース変化判定器が、オーディオ信号のソースが変化したかの判定を、(1)オーディオ信号に関連付けられた現在の圧縮器ゲインと、オーディオ信号に関連付けられた以前の圧縮器ゲインとの比較、(2)オーディオ信号に関連付けられたRMSパワーと、オーディオ信号に関連付けられた以前のRMSパワーとの比較、又は(3)オーディオ信号に関連付けられた現在のオーディオサンプル値と、オーディオ信号に関連付けられた以前のオーディオサンプル値との比較、のうちの少なくとも1つに基づいて行う、例2に記載の装置を含む。
[00112]例4は、音量調整器がさらに、オーディオ信号のソースが変化したとの判定に応答して、オーディオ信号のゲイン値をリセットする、例2に記載の装置を含む。
[00113]例5は、分類グループが、(1)オーディオ信号によって表される音楽のジャンル、(2)オーディオ信号によって表される音楽の期間、又は(3)オーディオ信号によって表される音楽における楽器の有無、のうちの少なくとも1つに関連付けられる、例1に記載の装置を含む。
[00114]例6は、入力音量検出器がさらに、第1の期間にわたる第4の音量レベルが目標音量閾値内に収まっていないと判定し、第1の期間が第2の期間の後に発生し、第3の音量レベルが第2の期間に関連しており、ダイナミックレンジ圧縮器がさらに、圧縮値を第5の音量レベルに調整し、調整された圧縮値が、第4の音量レベルを、目標音量閾値を満たす第5の音量レベルに修正する、例1に記載の装置を含む。
[00115]例7は、目標音量閾値が、フルスケールに対するデシベル(dBFS)で、21dBFSから5dBFS以内である、例1に記載の装置を含む。
[00116]例8は、命令を含む非一時的コンピュータ可読記憶媒体であって、命令が、実行された場合に、プロセッサに少なくとも、ニューラルネットワークを使用して、第1の音量レベルに関連するオーディオ信号のパラメータを分析して、オーディオ信号に関連付けられる分類グループを特定することと、オーディオ信号の入力音量を特定することと、オーディオ信号にゲイン値を適用することであって、ゲイン値が分類グループ及び入力音量に基づき、ゲイン値が第1の音量レベルを第2の音量レベルに修正する、適用することと、オーディオ信号に圧縮値を適用することであって、圧縮値が第2の音量レベルを、目標音量閾値を満たす第3の音量レベルに修正する、適用することと、を行わせる、非一時的コンピュータ可読記憶媒体を含む。
[00117]例9は、命令が、実行された場合に、プロセッサに、オーディオ信号のソースが変化したかを判定すること、を行わせる、例8に記載の非一時的コンピュータ可読記憶媒体を含む。
[00118]例10は、オーディオ信号のソースが変化したかの判定が、(1)オーディオ信号に関連付けられた現在の圧縮器ゲインと、オーディオ信号に関連付けられた以前の圧縮器ゲインとの比較、(2)オーディオ信号に関連付けられたRMSパワーと、オーディオ信号に関連付けられた以前のRMSパワーとの比較、又は(3)オーディオ信号に関連付けられた現在のオーディオサンプル値と、オーディオ信号に関連付けられた以前のオーディオサンプル値との比較、のうちの少なくとも1つに基づく、例9に記載の非一時的コンピュータ可読記憶媒体を含む。
[00119]例11は、命令が、実行された場合に、プロセッサに、オーディオ信号のソースが変化したとの判定に応答して、オーディオ信号のゲイン値をリセットすること、を行わせる、例9に記載の非一時的コンピュータ可読記憶媒体を含む。
[00120]例12は、分類グループが、(1)オーディオ信号によって表される音楽のジャンル、(2)オーディオ信号によって表される音楽の期間、又は(3)オーディオ信号によって表される音楽における楽器の有無、のうちの少なくとも1つに関連付けられる、例11に記載の非一時的コンピュータ可読記憶媒体を含む。
[00121]例13は、命令が、実行された場合に、プロセッサに、第1の期間にわたる第4の音量レベルが目標音量閾値内に収まっていないと判定することであって、第1の期間が第2の期間の後に発生し、第3の音量レベルが第2の期間に関連している、判定することと、圧縮値を第5の音量レベルに調整することであって、調整された圧縮値が、第4の音量レベルを、目標音量閾値を満たす第5の音量レベルに修正する、調整することと、を行わせる、例8に記載の非一時的コンピュータ可読記憶媒体を含む。
[00122]例14は、目標音量閾値が、フルスケールに対するデシベル(dBFS)で、21dBFSから5dBFS以内である、例8に記載の非一時的コンピュータ可読記憶媒体を含む。
[00123]例15は、ニューラルネットワークを使用して、第1の音量レベルに関連するオーディオ信号のパラメータを分析して、オーディオ信号に関連付けられる分類グループを特定するステップと、オーディオ信号の入力音量を特定するステップと、オーディオ信号にゲイン値を適用するステップであって、ゲイン値が分類グループ及び入力音量に基づき、ゲイン値が第1の音量レベルを第2の音量レベルに修正する、適用するステップと、オーディオ信号に圧縮値を適用するステップであって、圧縮値が第2の音量レベルを、目標音量閾値を満たす第3の音量レベルに修正する、適用するステップと、を含む、方法を含む。
[00124]例16は、オーディオ信号のソースが変化したかを判定するステップをさらに含む、例15に記載の方法を含む。
[00125]例17は、オーディオ信号のソースが変化したかを判定するステップが、(1)オーディオ信号に関連付けられた現在の圧縮器ゲインと、オーディオ信号に関連付けられた以前の圧縮器ゲインとの比較、(2)オーディオ信号に関連付けられたRMSパワーと、オーディオ信号に関連付けられた以前のRMSパワーとの比較、又は(3)オーディオ信号に関連付けられた現在のオーディオサンプル値と、オーディオ信号に関連付けられた以前のオーディオサンプル値との比較、のうちの少なくとも1つに基づく、例16に記載の方法を含む。
[00126]例18は、オーディオ信号のソースが変化したとの判定に応答して、オーディオ信号のゲイン値をリセットするステップをさらに含む、例16に記載の方法を含む。
[00127]例19は、分類グループが、(1)オーディオ信号によって表される音楽のジャンル、(2)オーディオ信号によって表される音楽の期間、又は(3)オーディオ信号によって表される音楽における楽器の有無、のうちの少なくとも1つに関連付けられる、例15に記載の方法を含む。
[00128]例20は、第1の期間にわたる第4の音量レベルが目標音量閾値内に収まっていないと判定するステップであって、第1の期間が第2の期間の後に発生し、第3の音量レベルが第2の期間に関連している、判定するステップと、圧縮値を調整して、第4の音量レベルを、目標音量閾値を満たす第5の音量レベルに修正するステップと、をさらに含む、例15に記載の方法を含む。
[00129]本明細書では特定の例示的な方法、装置、及び製造品を開示しているが、本特許の対象範囲はこれらに限定されない。それどころか、本特許は、本特許の特許請求の範囲内に適正に入る全ての方法、装置、及び製造品を含む。