[0001]本特許は、2018年10月24日に出願された米国特許仮出願第62/750,113号、2019年3月11日に出願された米国特許仮出願第62/816,813号、2019年3月11日に出願された米国特許仮出願第62/816,823号及び2019年5月20日に出願された米国特許仮出願第62/850,528号の特典を主張する出願から生じるものである。米国特許仮出願第62/750,113号、米国特許仮出願第62/816,813号、米国特許仮出願第62/816,823号及び米国特許仮出願第62/850,528号は、参照によりその全体が本明細書に組み込まれる。米国特許仮出願第62/750,113号、米国特許仮出願第62/816,813号、米国特許仮出願第62/816,823号、米国特許仮出願第62/850,528号の優先権が本明細書によって主張される。
[0027]一般には、図面(複数可)及び添付の明細書全体にわたって、同一又は類似の部分を参照するために同一の参照番号が使用される。
[0028]従来のメディア処理実装では、異なるメディアに関連付けられるオーディオ信号は、異なる特性を有することがある。たとえば、異なるオーディオトラックは、異なる周波数プロファイル(たとえば、オーディオ信号の異なる周波数での様々な音量レベル)、異なる全音量(たとえば、平均音量)、ピッチ、音色などを有することがある。たとえば、あるCDのメディアは、別のCDのメディアとは異なって記録及び/又はマスタリングされることがある。同様に、ストリーミングデバイスから検索されたメディアは、CDなどの非圧縮媒体から検索されたメディアとは著しく異なるオーディオ特性を有することがあり、異なるアプリケーション及び/又はオーディオ圧縮レベルを介して同一のデバイスから検索されたメディアとも異なることがある。ユーザが様々な異なるソース並びに様々なジャンル及びタイプのメディアをますます聴取するにつれて、ソース間のオーディオ特性の違い、及び同一のソースのメディア間のオーディオ特性の違いが非常に顕著になることがあり、潜在的には聴取者にとっていらいらさせられるものとなることがある。オーディオ等化は、オーディオ信号中の異なる周波数の音量レベルを調節するために利用される技法である。たとえば、音楽のジャンル、音楽の年代、ユーザプリファレンス、オーディオ信号が出力される空間などに関連付けられるプリファレンスに基づいて、低周波数信号、中間周波数信号及び/又は高周波数信号の存在を増大させるために等化を実施することができる。しかしながら、最適な、又は好ましい等化設定は、提示されているメディアに応じて変動することがある。したがって、聴取者は、メディアの変化(たとえば、ジャンルの変化、年代の変化、トラックの全音量の変化など)に基づいて聴取体験を最適化するために等化設定を頻繁に調節する必要があることがある。
[0029]いくつかの従来の手法では、特定のジャンル又はタイプの音楽に関連付けられる等化設定を選択することができる。たとえば、車両のメディアユニットでは、ロック音楽の典型的特性に基づいて、大きく聞こえることをユーザが望むことがある周波数をブーストし、非常に強いことがある他の周波数をカットするように構成される「ロック」用のイコライザを聴取者が選択できることがある。しかしながら、そのようなジャンル特有の広く適用される等化設定は、異なる歌の間の著しい違いに対処することができず、さらに、ラジオ局及びオーディオストリーミングアプリケーションでしばしば生じる、ユーザが異なるジャンルの新しいトラックを開始するときに、ユーザが等化設定を手動で変更することを依然として必要とする。
[0030]第1の実装では、本明細書で開示される例示的方法、装置、システム及び製造品が、オーディオ信号のリアルタイム特性に基づいて、オーディオ再生設定(たとえば、等化設定、音量設定など)を動的に調節する。本明細書で開示される例は、オーディオ信号のサンプル(たとえば、3秒のサンプル)の周波数表現(たとえば、CQT表現)を決定し、ニューラルネットワークに照会して、オーディオ信号に特有の等化設定を決定する。本明細書で開示されるいくつかの例では、等化設定は、複数のフィルタ(たとえば、低シェルフフィルタ、ピーキングフィルタ、高シェルフフィルタなど)を含み、そのうちの1つ又は複数を選択し、オーディオ信号に適用することができる。本明細書で開示される例示的方法、装置、システム及び製造品では、等化設定を出力するニューラルネットワークが、メディアに対して最適化される(たとえば、オーディオエンジニアによって決定される)複数の等化プロファイルに対応する基準メディアのライブラリを使用してトレーニングされる。
[0031]第1の実装では、本明細書で開示される例示的方法、装置、システム及び製造品が、定期的に(たとえば、毎秒)ニューラルネットワークに対して(たとえば、3秒のオーディオを含む)オーディオサンプルを照会して、プロファイルについての等化設定を決定し、経時的なオーディオ信号の変化(たとえば、異なる特性を有するトラックの異なる部分、曲の遷移、ジャンルの遷移など)を補償する。本明細書で開示される例示的方法、装置、システム及び製造品は、フィルタ設定間を遷移するために平滑化フィルタ(たとえば、指数平滑化アルゴリズム、一極巡回型平滑化フィルタなど)を利用して、等化設定の知覚できる変化を回避する。
[0032]さらに、前処理されたプロファイル情報を使用してコンテンツの再生を修正するための例示的方法、システム及び製造品が、第2の実装に従って説明される。例示的方法、システム及び製造品は、再生デバイスに配信すべきコンテンツのストリームにアクセスし、再生デバイスに配信すべきコンテンツのストリーム内の1つのコンテンツを特定し、特定した1つのコンテンツについてのプロファイルを決定し、決定したプロファイルを再生デバイスに配信する。これらの動作を自動的に(たとえば、リアルタイムに)オンザフライで実施することができる。
[0033]第2の実装では、例示的方法、システム及び製造品は、再生デバイスでコンテンツのストリームを受信し、コンテンツのストリームに関連付けられるプロファイル情報にアクセスし、アクセスしたプロファイル情報に基づいてコンテンツのストリームの再生を修正する。たとえば、例示的方法、システム及び製造品は、オーディオストリームに割り当てられたムード又は他の特性を特定するプロファイル情報と共にオーディオストリームを受信及び/又はアクセスし、プロファイル情報に基づいて再生デバイスの再生設定(たとえば、等化設定)を修正する。
[0034]したがって、第2の実装では、例示的方法、システム及び製造品は、コンテンツプロバイダによって供給されるコンテンツストリームを前処理して、コンテンツストリームについてのプロファイルを決定し、プロファイルを再生デバイスに配信することができ、再生デバイスは、とりわけ調節、修正及び/又は最適化された再生体験と共にコンテンツストリームを再生することができる。
[0035]第3の実装では、本明細書で開示される例示的方法、装置、システム及び製造品が、ユーザ入力又は調節を必要とすることなく、(たとえば、記憶デバイス、ラジオ、ストリーミングサービスなどからの)着信オーディオ信号を解析及び等化する。本明細書で開示される技法は、着信オーディオ信号を解析して、複数の周波数範囲についてのバッファ期間中の平均音量値と、複数の周波数範囲についてのバッファ期間中の標準偏差値と、着信オーディオ信号のエネルギーとを決定する。バッファ期間にわたる平均周波数値を利用することにより、適用する等化曲線を決定するときに着信オーディオ信号の突然の短期変化が平滑化され、以て等化設定の急激な変化が回避される。
[0036]第3の実装では、本明細書で開示される例示的方法、装置、システム及び製造品は、複数の周波数範囲についてのバッファ期間中の平均音量値及び/又は複数の周波数範囲についてのバッファ期間中の標準偏差値を含む入力特徴セットを生成し、入力特徴セットをニューラルネットワークに入力する。本明細書で開示される例示的方法、装置、システム及び製造品は、オーディオエンジニアによって生成された複数の基準オーディオ信号及び複数の等化曲線に関してトレーニングされたニューラルネットワークを利用する。いくつかの例では、基準オーディオ信号及び対応する等化曲線は、等化曲線を生成した特定のオーディオエンジニアの指示でタグ付けされ(たとえば、指示に関連付けられ)、異なるオーディオエンジニアの異なる等化スタイル及びプリファレンスをニューラルネットワークが学習することが可能となる。本明細書で開示される例示的方法、装置、システム及び製造品は、特定の周波数範囲に対応する利得/カット(たとえば、音量調節)をニューラルネットワークから受け取る。いくつかの例では、利得/カットが着信オーディオ信号の周波数表現に適用され、次いで等化後周波数表現が解析され、何らかの異常(たとえば、周波数にわたる音量レベルの鋭いスパイク又はディップ)があるかどうかが判定される。
[0037]第3の実装によれば、本明細書で開示される例示的方法、装置、システム及び製造品は、しきい値処理技法を利用して、オーディオ信号に適用すべき等化曲線(たとえば、複数の周波数範囲についての利得/カット)を確定する前に、等化後オーディオ信号の異常を除去する。いくつかの例では、しきい値処理技法は、隣り合う周波数値(たとえば、3つ以上の隣り合う周波数値)のセットを解析し、(たとえば、周波数範囲にわたって2次導関数を計算することによって決定される)これらの隣り合う周波数値間の音量の違いが、ニューラルネットワークからのEQ利得/カット241が適用されるときにしきい値を超えるかどうかを判定する。いくつかの例では、隣り合う周波数値間の音量の違いがしきい値を超えると判定したことに応答して、周波数値のうちの中心値に対応する音量を、隣り合う周波数値での音量レベル間の中点に調節することができ、以て等化後オーディオ信号の周波数表現のスパイク又はディップを除去する。この調節は、スペクトルエンベロープにわたるディップ及びピーク(たとえば、局所的異常値)を有するEQ曲線と比べたとき、より心地よいEQ曲線の主観的効果を有する。
[0038]第3の実装では、本明細書で開示される例示的方法、装置、システム及び製造品は、着信オーディオ信号についてのエネルギー値(たとえば、RMS値)と、等化曲線が着信オーディオ信号の表現に適用された後のエネルギー値とを測定して、等化の前後の全音量を正規化するように試みる。たとえば、オーディオ信号に適用されている等化曲線が、音量をカットする周波数範囲よりも多くの周波数範囲で音量をブーストする場合、等化後オーディオ信号の全エネルギーがより高くなることがある。そのようないくつかの例では、等化後オーディオ信号に対して音量正規化を実施して、着信オーディオ信号と等化後オーディオ信号との間の顕著な音量変化を除去することができる。
[0039]第3の実装では、本明細書で開示される例示的方法、装置、システム及び製造品は、着信オーディオ信号を供給するソース(たとえば、ラジオ、モバイルデバイスに記憶されたメディア、コンパクトディスクなど)の変化、又は着信オーディオ信号で表されるメディアの特性(たとえば、ジャンル、年代、ムードなど)の変化を補償するように等化設定を動的に調節することによってオーディオ等化技法を改善する。本明細書で開示される例示的技法は、エキスパートオーディオエンジニアによって等化されたオーディオ信号に関してインテリジェントにトレーニングされたニューラルネットワークを利用して、ニューラルネットワークが様々なオーディオエンジニアからプリファレンス及びスキルを学習することを可能にする。本明細書で開示される例示的技法は、しきい値処理技法を実施することにより、ニューラルネットワークによってもたらされる等化調節をさらに改善して、最終的等化曲線が滑らかであり、隣り合う周波数範囲間の大きな音量差を有さないことを保証する。
[0040]図1は、メディア特性のリアルタイム解析に基づく動的再生設定調節のための本開示の教示に従って構築された例示的環境100を示すブロック図である。例示的環境100は、メディアユニット106にオーディオ信号を送信するメディアデバイス102、104を含む。メディアユニット106は、オーディオ信号を処理して(たとえば、本明細書で開示されるオーディオ等化技法を実施して)、オーディオ増幅器108に信号を送り、その後で、オーディオ増幅器108は、出力デバイス110を介して、提示すべき増幅後オーディオ信号を出力する。
[0041]図1の例では、メディアデバイス102、104及び/又はメディアユニット106は、オーディオコンテンツ及び/又はビデオコンテンツなどの様々なタイプのマルチメディアコンテンツを供給する例示的コンテンツプロバイダ114又はコンテンツソース(たとえば、放送局、ネットワーク、ウェブサイトなど)と、インターネットなどのネットワーク112を介して通信する。例示的コンテンツプロバイダ114は、地上又は衛星ラジオ局、オンライン音楽サービス、オンラインビデオサービス、テレビジョン放送局及び/又は配給業者、ネットワーク化コンピューティングデバイス(たとえば、ネットワーク上のモバイルデバイス)、ローカルオーディオ又は音楽アプリケーションなどを含むことができる。任意のソースからコンテンツ(たとえば、オーディオ及び/又はビデオコンテンツ)を取得できることに留意されたい。たとえば、「コンテンツソース」という用語は、ユーザ及び他のコンテンツ所有者(アーティスト、ラベル、映画スタジオなど)を含むものとする。いくつかの例では、コンテンツソースは、ユーチューブ(YouTube)(商標)などの公にアクセス可能なウェブサイトである。
[0042]いくつかの例では、ネットワーク112は、コンテンツプロバイダ114、メディアデバイス102、メディアデバイス104、メディアユニット106及び/又は他のネットワーク化デバイスの間の通信を可能にする任意のネットワーク又は通信媒体でよい。例示的ネットワーク112は、ワイヤードネットワーク、ワイヤレスネットワーク(たとえば、モバイルネットワーク)、無線又は遠隔通信ネットワーク、衛星ネットワークなどでよく、又はそれらを含むことができる。たとえば、ネットワーク112は、プライベートネットワーク(たとえば、ケーブルテレビジョンネットワーク又は衛星ラジオネットワーク)、公衆ネットワーク(たとえば、無線ブロードキャストチャネル又はインターネット)などを構成する1つ又は複数の部分を含むことができる。
[0043]図1の図示される例の例示的メディアデバイス102は、ポータブルメディアプレーヤ(たとえば、MP3プレーヤ)である。例示的メディアデバイス102は、コンテンツプロバイダ114からのメディアに対応するオーディオ信号及び/又はビデオ信号を記憶又は受信する。たとえば、メディアデバイス102は、ネットワーク112を介してコンテンツプロバイダ114からオーディオ信号及び/又はビデオ信号を受信することができる。例示的メディアデバイス102は、他のデバイスにオーディオ信号を送信することができる。図1の図示される例では、メディアデバイス102は、補助ケーブルを介してメディアユニット106にオーディオ信号を送信する。いくつかの例では、メディアデバイス102は、任意の他のインターフェースを介してメディアユニット106にオーディオ信号を送信することができる。いくつかの例では、メディアデバイス102とメディアユニット106は同一のデバイスでよい(たとえば、メディアユニット106は、モバイルデバイスに対して提示されているオーディオに関して本明細書で開示されるオーディオ等化技法を実施することのできるモバイルデバイスでよい)。
[0044]図1の図示される例の例示的メディアデバイス104は、モバイルデバイス(たとえば、セルフォン)である。例示的メディアデバイス104は、メディアに対応するオーディオ信号を記憶又は受信し、他のデバイスにオーディオ信号を送信することができる。図1の図示される例では、メディアデバイス104は、メディアユニット106にオーディオ信号をワイヤレスに送信する。いくつかの例では、メディアデバイス104は、Wi-Fi、ブルートゥース(登録商標)及び/又は任意の他の技術を使用して、メディアユニット106にオーディオ信号を送信することができる。いくつかの例では、メディアデバイス104は、車両内で提示されるメディアを聴取者が選択するための車両の構成要素又は他のデバイスと対話することができる。メディアデバイス102、104は、オーディオ信号を記憶及び/又はアクセスすることのできる任意のデバイスでよい。いくつかの例では、メディアデバイス102、104は車両と一体である(たとえば、CDプレーヤ、ラジオなど)。
[0045]図1の図示される例の例示的メディアユニット106は、オーディオ信号を受信して処理することができる。図1の図示される例では、例示的メディアユニット106は、メディアデバイス102、104からメディア信号を受信して処理し、本明細書で開示されるオーディオ等化技法を実施する。例示的メディアユニット106は、出力デバイス110によって出力されているオーディオを監視して、オーディオセグメントの平均音量レベル、オーディオ特性(たとえば、周波数、振幅、時間値など)をリアルタイムに決定することができる。いくつかの例では、例示的メディアユニット106はソフトウェアとして実装され、直接接続(たとえば、ワイヤード接続)を通じて利用可能な、又はネットワークを通じて利用可能な(たとえば、クラウド上で利用可能な)、別のデバイスの部分として含まれる。いくつかの例では、例示的メディアユニット106をオーディオ増幅器108及び出力デバイス110と共に組み込むことができ、オーディオ信号の処理後にオーディオ信号を例示的メディアユニット106自体で出力することができる。
[0046]いくつかの例では、メディアデバイス102、メディアデバイス104及び/又はメディアユニット106は、ネットワーク112を介してコンテンツプロバイダ114及び/又はコンテンツプロファイルエンジン116と通信することができる。追加又は代替の例では、メディアデバイス102及び/又はメディアデバイス104は、オーディオ又はビデオコンテンツのストリームを受信して、ストリームを処理し、メディアデバイス102及び/又はメディアデバイス104のディスプレイで使用可能な情報(たとえば、デジタル又はアナログ)を出力し、メディアデバイス102及び/又はメディアデバイス104に関連付けられるユーザにオーディオ又はビデオコンテンツを提示又は再生することによってオーディオ又はビデオコンテンツのストリームを再生するように構成された同調器を含むことができる。メディアデバイス102及び/又はメディアデバイス104は、コンテンツの処理されたストリーム及び/又は関連するメタデータを表示するように構成されたディスプレイ又は他のユーザインターフェースも含むことができる。ディスプレイは、フラットパネル画面、プラズマ画面、発光ダイオード(LED)画面、陰極線管(CRT)、液晶ディスプレイ(LCD)、プロジェクタなどでよい。
[0047]いくつかの例では、コンテンツプロバイダ114、コンテンツプロファイルエンジン116、メディアデバイス102、メディアデバイス104及び/又はメディアユニット106は、コンテンツプロバイダ114によって送信又はブロードキャストされているコンテンツ、並びに/或いはメディアデバイス102、メディアデバイス104及び/又はメディアユニット106によって受信又はアクセスされているコンテンツについての識別子を生成するように構成された1つ又は複数のフィンガープリントジェネレータ(fingerprint generator)115を含むことができる。たとえば、フィンガープリントジェネレータ115は、とりわけ、受信されたコンテンツの基準フィンガープリント又は他の識別子を生成するように構成された基準フィンガープリントジェネレータ(たとえば、コンテンツの一部からハッシュ値を計算する構成要素)を含むことができる。
[0048]いくつかの例では、メディアデバイス102及び/又はメディアデバイス104によって再生されるコンテンツの再生体験を修正するようにメディアユニット106を構成することができる。たとえば、メディアユニット106は、コンテンツのストリームに関連付けられるプロファイルにアクセスし、プロファイルを利用して、コンテンツの再生のための品質又は特性に関連付けられる様々な再生設定(たとえば、等化設定)を修正、調節及び/又は制御することができる。コンテンツがビデオ又は他の視覚的コンテンツである場合の一例では、再生設定は、カラーパレット設定、カラーレイアウト設定、輝度設定、フォント設定、アートワーク設定などを含むことができる。
[0049]図1の図示される例の例示的オーディオ増幅器108は、メディアユニット106によって処理(たとえば、等化)されているオーディオ信号を受信することができ、出力デバイス110への出力についての適切な再生設定調節(たとえば、オーディオ信号の特定の帯域の増幅、ユーザ入力に基づく音量調節など)を実施することのできるデバイスである。いくつかの例では、オーディオ増幅器108を出力デバイス110に組み込むことができる。いくつかの例では、オーディオ増幅器108は、メディアユニット106からの増幅出力値に基づいてオーディオ信号を増幅する。いくつかの例では、オーディオ増幅器108は、聴取者(たとえば、音量セレクタを調節する車両内の乗客又はドライバ)からの入力に基づいてオーディオ信号を増幅する。追加又は代替の例では、オーディオが、増幅器に通信されるのではなく、メディアユニット106から直接出力される。
[0050]図1の図示される例の例示的出力デバイス110はスピーカである。いくつかの例では、出力デバイス110は、複数のスピーカ、ヘッドフォン、又は聴取者にオーディオ信号を提示することのできる任意の他のデバイスでよい。いくつかの例では、出力デバイス110は、視覚的要素も出力できることがある(たとえば、スピーカ付きテレビジョン)。いくつかの例では、出力デバイス110をメディアユニット106に一体化することができる。たとえば、メディアユニット106がモバイルデバイスである場合、出力デバイス110は、モバイルデバイスに一体化され、或いは(たとえば、ブルートゥース(登録商標)、補助ケーブルなどを介して)モバイルデバイスに接続されたスピーカでよい。いくつかのそのような例では、出力デバイス110は、モバイルデバイスに接続されたヘッドフォンでよい。
[0051]いくつかの例では、コンテンツプロファイルエンジン116は、ネットワーク112を介して、コンテンツプロバイダ114によって供給されるコンテンツのストリームにアクセスし、様々なプロセスを実施して、コンテンツのストリームについてのプロファイル又はプロファイル情報を決定、生成及び/又は選択することができる。たとえば、コンテンツプロファイルエンジン116は、(たとえば、オーディオ又はビデオフィンガープリント比較を使用して)コンテンツのストリームを特定し、特定したコンテンツのストリームについてのプロファイルを決定することができる。コンテンツプロファイルエンジン116は、メディアデバイス102、メディアデバイス104及び/又はメディアユニット106にプロファイルを配信することができ、メディアデバイス102、メディアデバイス104及び/又はメディアユニット106は、コンテンツのストリームと共にプロファイルを受信し、とりわけ、受信したプロファイル内の情報に基づいて関連付け及び/又は選択される一定の再生設定を使用してコンテンツのストリームを再生する。
[0052]図1の例では、環境は、メディアユニット106による使用のためのトレーニング済みモデルを提供することのできるオーディオEQエンジン118を含む。いくつかの例では、トレーニング済みモデルはオーディオEQエンジン118上にあるが、いくつかの例では、トレーニング済みモデルは、メディアユニット106上で直接使用するためにエクスポートされる。機械学習技法は、ディープラーニングネットワークであっても、他の経験/観察学習システムであっても、たとえば、結果を最適化し、イメージ内の物体の位置を突き止め、音声を理解して音声をテキストに変換し、検索エンジン結果の関連性を改善するために使用することができる。
[0053]図1の図示される例示的環境100が、車両内の再生設定調節(たとえば、オーディオ等化)実装を参照して説明されるが、例示的環境100に含まれるデバイスの一部又はすべてを任意の環境で、任意の組合せで実装することができる。たとえば、オーディオ増幅器108及び/又は出力デバイス110のいずれかと共に、メディアユニット106を携帯電話で(たとえば、全体的又は部分的に)実装することができ、携帯電話は、モバイルデバイスから提示されている任意のメディア(たとえば、ストリーミング音楽、モバイルデバイス上にローカルに記憶されたメディア、ラジオなど)に対して本明細書で開示される技法を利用して、再生設定調節(たとえば、オーディオ等化)を実施することができる。いくつかの例では、環境100は家屋のエンターテイメントルーム内でよく、メディアデバイス102、104は、パーソナルステレオシステム、1つ又は複数のテレビジョン、ラップトップ、他のパーソナルコンピュータ、タブレット、他のモバイルデバイス(たとえば、スマートフォン)、ゲーミングコンソール、バーチャルリアリティデバイス、セットトップボックス、或いはメディアにアクセス及び/又は送信することのできる任意の他のデバイスでよい。さらに、いくつかの例では、メディアは視覚的要素も含むことができる(たとえば、テレビジョンショー、映画)。
[0054]いくつかの例では、コンテンツプロファイルエンジン116は、コンテンツプロバイダ114、メディアデバイス102、メディアデバイス104及び/又はメディアユニット106の部分でよい。別の例として、メディアデバイス102及び/又はメディアデバイス104は、構成の中でもとりわけ、コンテンツプロバイダ114を含むことができる(たとえば、メディアデバイス102及び/又はメディアデバイス104は、音楽再生アプリケーションを有するモバイルデバイスであり、コンテンツプロバイダ114は、歌及び他のオーディオのローカルストアである)。
[0055]図2は、本開示の教示の少なくとも第1の実装、第2の実装及び第3の実装によるオーディオ等化のための技法を実施するための、図1のメディアユニット106の追加の詳細を示すブロック図である。例示的メディアユニット106は、入力メディア信号202を受信し、信号を処理して、オーディオ及び/又はビデオ特性を決定する。次いで、オーディオ及び/又はビデオ特性は、入力メディア信号202の特性に基づいて適切なオーディオ及び/又はビデオ再生調節を決定するために利用される。入力メディア信号202がオーディオ信号であるとき、メディアユニット106は、出力デバイス110によって出力する前に、増幅するためにオーディオ増幅器108に出力オーディオ信号を送信する。
[0056]例示的メディアユニット106は、例示的信号変換器204、例示的等化(EQ)モデル照会ジェネレータ206、例示的EQフィルタ設定アナライザ208、例示的EQパーソナライゼーションマネージャ210、例示的デバイスパラメータアナライザ212、例示的履歴EQマネージャ214、例示的ユーザ入力アナライザ216、例示的EQフィルタセレクタ218、例示的EQ調節インプリメンタ(implementor)220、例示的平滑化フィルタコンフィギュレータ222、例示的データストア224及び例示的更新モニタ226を含む。例示的メディアユニット106は、例示的フィンガープリントジェネレータ227及び例示的シンクロナイザ228をさらに含む。例示的メディアユニット106は、例示的バッファマネージャ230、例示的時間-周波数領域コンバータ232、例示的音量計算器234、例示的エネルギー計算器236、例示的入力特徴セットジェネレータ238、例示的EQ曲線マネージャ240、例示的音量調節器242、例示的しきい値処理コントローラ244、例示的EQ曲線ジェネレータ246、例示的音量ノーマライザ248及び例示的周波数-時間領域コンバータ250をさらに含む。
[0057]例示的メディアユニット106は、少なくとも3つの実装に従って動作するように構成される。第1の実装では、メディアユニット106は、入力メディア信号202の周波数表現を含む照会に応答して、ニューラルネットワークから受け取ったフィルタ設定に従ってメディアをリアルタイムに等化する。第1の実装では、フィルタ設定を処理した後、メディアユニット106は、フィルタ設定のうちの少なくともいくつかに従って等化される出力メディア信号252を生成することができる。第1の実装のいくつかの例では、メディアユニット106は、出力メディア信号252を出力する前に、入力メディア信号202の等化後バージョンに1つ又は複数の平滑化フィルタをさらに適用することができる。
[0058]第2の実装では、メディアユニット106は、コンテンツプロファイルエンジン(たとえば、コンテンツプロファイルエンジン116)から受信した1つ又は複数のプロファイルに従ってメディアを動的に等化する。第2の実装では、1つ又は複数のプロファイルを処理した後、メディアユニット106は、1つ又は複数のプロファイルのうちの少なくともいくつかに従って等化される出力メディア信号252を生成することができる。第2の実装のいくつかの例では、メディアユニット106は、出力メディア信号252を出力する前に、入力メディア信号202にパーソナライズされた等化をさらに適用することができる。
[0059]第3の実装では、メディアユニット106は、入力メディア信号202に基づく特徴を含む入力特徴セットに応答して、ニューラルネットワークから受け取った等化利得及びカット値に従って、メディアをリアルタイムに等化する。第3の実装では、フィルタ設定を処理した後、メディアユニット106は、利得及びカット値のうちの少なくともいくつかに従って等化される出力メディア信号252を生成することができる。第3の実装のいくつかの例では、メディアユニット106は、入力メディア信号202の等化後バージョンにしきい値処理を適用して、出力メディア信号252の局所異常値を除去することができる。
第1の実装:フィルタベースの等化
[0060]第1の実装では、例示的入力メディア信号202は、提示のために処理及び出力すべきオーディオ信号でよい。無線信号(たとえば、FM信号、AM信号、衛星ラジオ信号など)、コンパクトディスク、(たとえば、メディアデバイスに接続された)補助ケーブル、ブルートゥース信号、Wi-Fi信号、又は任意の他の媒体から入力メディア信号202にアクセスすることができる。入力メディア信号202は、信号変換器204、EQ調節インプリメンタ220及び/又は更新モニタ226によってアクセスされる。入力メディア信号202は、EQ調節インプリメンタ220によって変換され、メディアユニット106によって出力メディア信号252として出力される。
[0061]図2の図示される例の例示的信号変換器204は、入力メディア信号202をオーディオ信号の周波数及び/又は特性表現に変換する。たとえば、信号変換器204は、入力メディア信号202をCQT表現に変換することができる。いくつかの例では、信号変換器204は、フーリエ変換を使用して入力メディア信号202を変換する。いくつかの例では、信号変換器204は、入力メディア信号202を周波数及び/又は特性表現に継続的に変換し、他の例では、信号変換器204は、一定の間隔で、又はメディアユニット106の1つ又は複数の他の構成要素からの要求に応答して(たとえば、動的オーディオ再生設定調節のために必要とされるときにはいつでも)、入力メディア信号202を変換する。いくつかの例では、信号変換器204は、(たとえば、オーディオ再生設定を更新する時であることを示す)更新モニタ226からの信号に応答して、入力メディア信号202を変換する。図示される例の信号変換器204は、EQモデル照会ジェネレータ206、フィンガープリントジェネレータ227及び/又はシンクロナイザ228に入力メディア信号202の周波数及び/又は特性表現を通信する。
[0062]図2の図示される例のEQモデル照会ジェネレータ206は、入力メディア信号202の周波数及び/又は特性表現に基づいて、EQ照会207を生成及び通信する。EQモデル照会ジェネレータ206は、入力メディア信号202のサンプル時間フレーム(たとえば、3秒のサンプル)に対応する1つ又は複数の周波数表現(複数可)を選択し、ニューラルネットワーク(たとえば、図4のEQニューラルネットワーク402)に周波数表現(複数可)を通信する。サンプル時間フレームは、オーディオ再生設定を決定するときに考慮すべき入力メディア信号202の持続時間に対応する。いくつかの例では、オペレータ(たとえば、聴取者、オーディオエンジニアなど)がサンプル時間フレームを構成することができる。いくつかの例では、EQモデル照会ジェネレータ206は、ネットワークを介してニューラルネットワークに照会207(入力メディア信号202の周波数表現(複数可)を含む)を通信する。いくつかの例では、EQモデル照会ジェネレータ206は、メディアユニット106(たとえば、データストア224)に記憶され、メディアユニット106上で実行されるモデルを照会する。いくつかの例では、EQモデル照会ジェネレータ206は、更新モニタ226からの信号に応答して更新後オーディオ再生設定を決定するために新しい照会207を生成する。
[0063]図2の図示される例のEQフィルタ設定アナライザ208は、EQフィルタ設定209にアクセスし、入力メディア信号202に適用すべきフィルタ係数を計算する。EQフィルタ設定アナライザ208は、EQニューラルネットワーク(たとえば、図4のEQニューラルネットワーク402)によって出力されるEQフィルタ設定209にアクセスし、EQフィルタ設定209は、1つ又は複数の利得値、周波数値及び/又は品質係数(Q)値を含むことができる。いくつかの例では、EQフィルタ設定209は、複数のフィルタ(たとえば、1つの低シェルフフィルタ、4つのピーキングフィルタ、1つの高シェルフフィルタなど)を含む。いくつかのそのような例では、個々のフィルタは、1つ又は複数の利得値、1つ又は複数の周波数値及び/又は1つ又は複数のQ値などの複数の調節パラメータを含む。たとえば、複数のフィルタを適用すべきオーディオ信号について、複数のフィルタは、それぞれの利得値と、それぞれの周波数値と、それぞれのQ値(たとえば、それぞれの品質係数値)とを含むそれぞれの調節パラメータを含むことができる。いくつかの例では、EQフィルタ設定アナライザ208は、フィルタタイプに基づいてフィルタ係数を計算するために異なる式を利用する。たとえば、第1の式を利用して、低シェルフフィルタについての第1のフィルタ係数を決定することができ、第2の式を利用して、高シェルフフィルタについての第2のフィルタ係数を決定することができる。EQフィルタ設定アナライザ208はEQフィルタセレクタ218と通信して、EQフィルタ設定アナライザ208によって受信されたEQフィルタ設定209の1つ又は複数のセットのうちのどれを入力メディア信号202に適用するために(たとえば、フィルタ係数を計算することによって)処理すべきかを決定する。
[0064]図2の図示される例の例示的EQパーソナライゼーションマネージャ210は、パーソナライズされた等化設定(複数可)(たとえば、パーソナライズされたEQ設定、曲線、フィルタ設定など)を生成し、パーソナライズされた等化設定をニューラルネットワークからの動的に生成されたフィルタ設定と組み合わせて、聴取者のパーソナルプリファレンスを反映することができる。EQパーソナライゼーションマネージャ210は、例示的デバイスパラメータアナライザ212、例示的履歴EQマネージャ214及び例示的ユーザ入力アナライザ216を含む。
[0065]デバイスパラメータアナライザ212は、メディアユニット106及び/又は入力メディア信号202を供給するソースデバイスに関連付けられるパラメータを解析する。たとえば、デバイスパラメータアナライザ212は、入力メディア信号202が発信されたアプリを示すことができる。いくつかのそのような例では、異なるアプリを異なる等化プロファイルに関連付けることができる。たとえば、オーディオブックに関連付けられるアプリからのオーディオ信号は、フィットネスに関連付けられるアプリからのオーディオ信号に比べて、異なる最適等化曲線を有することがある。
[0066]いくつかの例では、デバイスパラメータアナライザ212はデバイスの位置を決定する。たとえば、デバイスパラメータアナライザ212は、メディアユニット106の位置、及び/又はメディアユニット106に入力メディア信号202を供給するデバイスの位置を決定することができる。たとえば、メディアユニット106がモバイルデバイスに一体化され、モバイルデバイスの位置がジムである場合、モバイルデバイスがユーザの自宅又は職場に位置する場合とは異なるパーソナライズされた等化曲線を生成することができる。いくつかの例では、デバイスパラメータアナライザ212は、モバイルデバイスの位置が、パーソナライズされた等化設定(たとえば、パーソナライズされたEQ設定)がそれについて決定されるエリア(たとえば、ジム、自宅、職場、図書館など)のジオフェンス内にあるかどうかを判定する。
[0067]いくつかの例では、デバイスパラメータアナライザ212は、メディアユニット106のユーザ、及び/又はメディアユニットに入力メディア信号202を供給するデバイスのユーザを決定する。たとえば、メディアユニット106がモバイルデバイスに一体化される場合、デバイスパラメータアナライザ212は、ユーザデバイスに関連付けられるログイン及び/又はユーザデバイスに関連付けられる別の識別子に基づいて、モバイルデバイスのユーザを決定することができる。いくつかの例では、ユーザプロファイルを選択して、誰がメディアユニット106に関連付けられるモバイルデバイス及び/又は他のデバイスを利用しているかを示すようにユーザに求めることができる。
[0068]図示される例のデバイスパラメータアナライザ212は、デバイスパラメータアナライザ212がアクセスすることのできる任意のパラメータ(たとえば、位置、ユーザ識別子、ソース識別子など)に基づいて、パーソナライズされたEQ曲線を出力及び/又は調節する。
[0069]図2の図示される例の履歴EQマネージャ214は、後続のパーソナライズされたEQ曲線調節を可能にするために利用される過去の等化曲線に関する履歴データを維持する。たとえば、ユーザがロック音楽を頻繁に聴取し、ロック音楽に最も適しているEQ曲線を頻繁に利用する場合、履歴EQマネージャ214は、ユーザの典型的な音楽プリファレンスに基づいて、パーソナライズされたEQ曲線を調節及び/又は生成するのを助けることができる。たとえば、履歴EQマネージャ214は、定義済みの履歴聴取期間に基づいて、パーソナライズされたEQ曲線を生成することができる。たとえば、履歴EQマネージャ214は、前の1時間の聴取、過去の24時間の聴取、及び/又は任意の他の時間枠に基づいて、パーソナライズされたEQ曲線を生成することができる。換言すれば、履歴EQマネージャ214は、前の期間に関連付けられるEQ設定に基づいて、パーソナライズされたEQ曲線を生成及び/又は調節することができる。履歴EQマネージャ214は、EQフィルタ設定アナライザ208及び/又はニューラルネットワークによってリアルタイムに生成されているEQ曲線を取り、EQの各帯域(たとえば、5つの帯域のそれぞれ)についてのそれらの設定を、履歴期間についての設定を平均する、長期のパーソナライズされたEQフィルタにまとめる。システムが履歴期間にわたって認識した平均曲線が、パーソナライゼーションEQ曲線となる。この曲線は、ユーザが聴取した音楽のタイプの平均EQを反映する。たとえば、ユーザが過去60分にわたってヘビーメタルを聴取した場合、そのユーザは、ユーザが過去60分にわたってトップ40ポップを聴取した場合とは異なるEQ曲線をユーザのユーザプロファイルに記憶していることになる。
[0070]平均化操作は、ローリング平均、IIRフィルタ、時間枠にわたって平均するように設定された係数を有する(全極フィルタ)、又は任意の他の平均化技法でよい。この平均化は、バッファ情報を長期間保持する必要を軽減することができる。履歴EQデータを利用することにより、EQ設定がある程度の「粘性」を有するようにすることができ、以てシステムは、経時的に聴取者のプリファレンスを徐々に学習し、より有用な等化曲線を形成する。
[0071]いくつかの例では、履歴EQマネージャ214は、各ジャンル(ロック、カントリー、音声、ヒップホップなど)についての所与のEQ曲線を求めるテーブルルックアップと共に使用することのできるジャンルの小サブセットを決定する。このジャンルのサブセットに基づいて、EQ曲線を生成、調節又は選択することができる。
[0072]図2の図示される例のユーザ入力アナライザ216は、等化設定に対応するユーザ入力にアクセスし、ユーザ入力に応答する。たとえば、ユーザは、(たとえば、「いいね」ボタンを押すこと、ユーザレーティングを与えることなどによって)特定の等化設定が好ましいかどうかに関する入力を与えることができる。次いで、パーソナライズされたEQ曲線を生成するときに、これらの入力を利用して、ユーザが好むことを示した等化設定をより強く重み付けすることができる。いくつかの例では、定義済みの期間(たとえば、数か月、1年など)にわたってユーザプリファレンスが記憶される。いくつかの例では、特定のユーザアカウント(たとえば、デバイスパラメータアナライザ212によって特定されるユーザログイン)に関連してユーザプリファレンスが記憶される。いくつかの例では、ユーザ入力アナライザ216は、オーディオ信号に適用されている自動化されたパーソナライズされた等化をユーザが取り消したいことを示す「リセット」信号を、聴取者から受信する。いくつかの例では、ユーザ入力アナライザ216は、聴取者からの強度入力に基づいて等化の強度を調節する。
[0073]図2の図示される例の例示的EQフィルタセレクタ218は、入力メディア信号202に適用すべき、EQフィルタ設定アナライザ208によって受信されたEQフィルタ設定によって表されるフィルタのうちの1つ又は複数(たとえば、低シェルフフィルタ、ピーキングフィルタ、高シェルフフィルタなどのうちの1つ又は複数)を選択する。図示される例のEQフィルタセレクタ218は、最高の大きさの利得を有する(したがって入力メディア信号202に対して最大の影響を及ぼす可能性の高い)1つ又は複数のフィルタを選択する。いくつかの例では、特定の数のフィルタが利用されるべきとき(たとえば、5つの帯域フィルタ)などに、EQフィルタ設定によって表される1つ又は複数の追加のフィルタを廃棄することができる。いくつかの例では、EQフィルタセレクタ218は、聴取者に少なくとも知覚できる影響を及ぼすことになるフィルタを決定し、これらのフィルタを廃棄する。たとえば、EQフィルタセレクタは、1つ又は複数のフィルタのスペクトルエンベロープにわたって積分し、フィルタ間のこの出力を比較して、EQフィルタ設定によって表されるフィルタのうちのどれを廃棄すべきかを決定することができる。いくつかの例では、EQフィルタセレクタ218は、EQフィルタ設定アナライザ208及び/又はEQ調節インプリメンタ220に、フィルタのうちのどれを入力メディア信号202に適用すべきかを通信する。
[0074]図2の図示される例のEQ調節インプリメンタ220は、EQフィルタセレクタ218によって選択され、EQフィルタ設定アナライザ208によって解析されたフィルタを適用する。たとえば、EQ調節インプリメンタ220は、EQフィルタ設定アナライザ208によって計算されたフィルタ係数に基づいて、入力メディア信号202の振幅、周波数及び/又は位相特性を調節することができる。いくつかの例では、EQ調節インプリメンタ220は、平滑化フィルタコンフィギュレータ222によって示される平滑化フィルタを使用して、前のオーディオ再生設定から更新後オーディオ再生設定(たとえば、新しいフィルタ構成)に滑らかに遷移する。1つ又は複数の等化フィルタ(複数可)を適用した後、EQ調節インプリメンタ220は出力メディア信号252を出力する。
[0075]いくつかの例では、EQ調節インプリメンタ220は、ニューラルネットワークからのEQフィルタ設定209に基づいて生成された等化プロファイルと、EQパーソナライゼーションマネージャ210からのパーソナライズされたEQとの間で混合する。たとえば、ユーザプロファイルEQ曲線を、ニューラルネットワークによって生成されるリアルタイム曲線と混合することができる。いくつかの例では、EQ曲線を混合するために重みが使用される。複数の重みを使用することもできる。一例として、ユーザが最終的に聴取するオーディオを形成する最終EQ曲線は、動的に生成されたフィルタ設定に基づいて現EQの0.5倍でよく、パーソナライズされたEQ曲線の0.5倍である。別の例として、最初の数字は、動的に生成されたフィルタ設定に基づいて現EQに対して0.25でよく、パーソナライズされたEQ曲線に対して0.75でよい。
[0076]図2の図示される例の例示的平滑化フィルタコンフィギュレータ222は、オーディオ再生設定間を平滑化するためのパラメータを定義する。たとえば、平滑化フィルタコンフィギュレータ222は、オーディオ再生設定を適用するときにEQ調節インプリメンタ220によって平滑化を実装するために式及び/又はパラメータを供給することができる(たとえば、指数平滑化アルゴリズム、一極巡回型平滑化フィルタなど)。図9Aの第2のスペクトログラム900aは、平滑化フィルタを実装する利点を示し、平滑化フィルタを使用して動的オーディオ再生設定調節を受けたオーディオ信号のスペクトログラムを示す。
[0077]図2の図示される例の例示的データストア224は、入力メディア信号202、図4のEQニューラルネットワーク402からの出力モデル、1つ又は複数のプロファイル229、EQフィルタ設定209、EQ入力特徴セット239、EQ利得/カット241、平滑化フィルタ設定、オーディオ信号バッファ、並びに/或いはメディアユニット106によって実装される動的再生設定調節プロセスに関連する任意の他のデータを記憶する。揮発性メモリ(たとえば、同期型ダイナミックランダムアクセスメモリ(SDRAM)、ダイナミックランダムアクセスメモリ(DRAM)、ラムバス(RAMBUS)ダイナミックランダムアクセスメモリ(RDRAM)など)及び/又は不揮発性メモリ(たとえば、フラッシュメモリなど)によってデータストア224を実装することができる。追加又は代替として、ダブルデータレート(DDR)、DDR2、DDR3、モバイルDDR(mDDR)などの1つ又は複数のDDRメモリによってデータストア224を実装することができる。追加又は代替として、ハードディスクドライブ(複数可)、コンパクトディスクドライブ(複数可)、デジタルバーサタイルディスクドライブ(複数可)などの1つ又は複数のマスストレージデバイスによってデータストア224を実装することができる。図示される例では、データストア224が単一のデータベースとして示されているが、任意の数及び/又はタイプ(複数可)のデータベースによってデータストア224を実装することができる。さらに、データストア224に記憶されたデータは、たとえば、バイナリデータ、コンマ区切りデータ、タブ区切りデータ、構造化照会言語(SQL)構造などの任意のデータフォーマットでよい。
[0078]図示される例の例示的更新モニタ226は、オーディオ再生設定調節間の持続時間を監視し、更新持続時間しきい値が満たされるときを判定する。たとえば、1秒の更新しきい値と共に更新モニタ226を構成することができ、以てEQモデル照会ジェネレータ206は、1秒ごとにEQニューラルネットワーク(たとえば、図4のEQニューラルネットワーク402)に照会して、新しい再生設定を決定する。いくつかの例では、更新モニタ226は信号変換器204と通信して、入力メディア信号202のサンプル(たとえば、3秒のサンプル、5秒のサンプルなど)を単純化し、更新後オーディオ再生設定を決定するプロセスを開始する。
[0079]動作の際に、信号変換器204は、入力メディア信号202にアクセスし、入力オーディオ信号を周波数及び/又は特性形式に変換し、次いで周波数及び/又は特性形式がEQモデル照会ジェネレータ206によって利用され、ニューラルネットワークが照会され、EQフィルタ設定209が決定される。ニューラルネットワークはEQフィルタ設定209を返し、EQフィルタ設定209がEQフィルタ設定アナライザ208によって解析及び処理される(たとえば、適用可能フィルタ係数に変換される)。EQフィルタセレクタ218は、入力メディア信号202に適用する、EQ設定によって表されるフィルタのうちの1つ又は複数を決定する。EQ調節インプリメンタ220は、平滑化フィルタコンフィギュレータ222からのパラメータに基づく平滑化を使用して、選択されたフィルタを適用する。更新モニタ226は、前のオーディオ再生設定が適用されてからの持続時間を監視し、更新持続時間しきい値が満たされるとき、オーディオ再生設定を更新する。
第2の実装:プロファイルベースの等化
[0080]第2の実装では、図2の図示される例のフィンガープリントジェネレータ227は、メディアデバイス102、メディアデバイス104及び/又はメディアユニット106によって受信又はアクセスされる入力メディア信号202(たとえば、コンテンツ)についての識別子(たとえば、フィンガープリント及び/又はシグニチャ)を生成する。たとえば、フィンガープリントジェネレータ227は、とりわけ、入力メディア信号202(たとえば、受信されたコンテンツ)の基準フィンガープリント又は他の識別子を生成するように構成される基準フィンガープリントジェネレータ(たとえば、コンテンツの一部からハッシュ値を計算する構成要素)を含むことができる。いくつかの例では、フィンガープリントジェネレータ227は、図1のフィンガープリントジェネレータ115を実装する。
[0081]図2の図示される例のシンクロナイザ228は、コンテンツプロファイルエンジン116からの1つ又は複数のプロファイル229を入力メディア信号202に同期する。いくつかの例では、メディアユニット106は、メディア(たとえば、歌)の再生を順序付ける(又はメディアが再生される順序を修正する(たとえば、調節する))ためのシーケンサを含むことができる。追加又は代替の例では、シーケンサはメディアユニット106の外部でよい。
[0082]図2の例では、シンクロナイザ228は、入力メディア信号202に関連付けられるフィンガープリント(複数可)を利用して、入力メディア信号202を1つ又は複数のプロファイル229に同期することができる。たとえば、1つ又は複数のプロファイル229は、1つ又は複数の設定を入力メディア信号202についての既知のフィンガープリントに関係付ける情報を含むことができ、したがってシンクロナイザ228は、入力メディア信号202の再生中に1つ又は複数のプロファイル229のうちの1つを入力メディア信号202に同期するために、設定を入力メディア信号202の一部に位置合せすることができる。
[0083]いくつかの例では、シンクロナイザ228は、入力メディア信号202及び/又はその代替表現内の様々なオーディオ又は音響イベント(たとえば、スネアヒット(snare hit)、ギターソロの開始、最初のボーカル)を特定し、入力メディア信号202の再生中に1つ又は複数のプロファイル229のうちの1つを入力メディア信号202に同期するために、1つ又は複数のプロファイル229のうちの1つを入力メディア信号202内のイベントに位置合せすることができる。追加又は代替の例では、シーケンサは、適応ラジオ、プレイリスト推薦、現在レンダリングされているメディア(たとえば、(たとえば、そのプロファイルを使用する)コンテンツ)に特有のクラウド(音楽及び/又はビデオ)内のメディア(たとえば、コンテンツ)のプレイリスト、ユーザのプロファイル、パーソナライズされた最適な体験を提供するために前もって知られているデバイス設定などの部分として歌のシーケンスを編成することができる。
[0084]第2の実装では、図2の図示される例の例示的EQパーソナライゼーションマネージャ210は、パーソナライズされた等化設定(複数可)(たとえば、パーソナライズされたEQ設定、曲線、フィルタ設定など)を生成し、パーソナライズされた等化設定を1つ又は複数のプロファイル229と組み合わせて、聴取者のパーソナルプリファレンスを反映することができる。
[0085]デバイスパラメータアナライザ212は、メディアユニット106及び/又は入力メディア信号202を供給するソースデバイスに関連付けられるパラメータを解析する。たとえば、デバイスパラメータアナライザ212は、入力メディア信号202が発信されたアプリを示すことができる。いくつかのそのような例では、異なるアプリを異なる等化プロファイルに関連付けることができる。たとえば、オーディオブックに関連付けられるアプリからのオーディオ信号は、フィットネスに関連付けられるアプリからのオーディオ信号からのオーディオ信号に比べて、異なる最適等化曲線を有することがある。
[0086]いくつかの例では、デバイスパラメータアナライザ212はデバイスの位置を決定する。たとえば、デバイスパラメータアナライザ212は、メディアユニット106の位置、及び/又はメディアユニット106に入力メディア信号202を供給するデバイスの位置を決定することができる。たとえば、メディアユニット106がモバイルデバイスに一体化され、モバイルデバイスの位置がジムである場合、モバイルデバイスがユーザの自宅又は職場に位置する場合とは異なるパーソナライズされた等化曲線を生成することができる。いくつかの例では、デバイスパラメータアナライザ212は、モバイルデバイスの位置が、パーソナライズされた等化設定(たとえば、パーソナライズされたEQ設定)がそれについて決定されるエリア(たとえば、ジム、自宅、職場、図書館など)のジオフェンス内にあるかどうかを判定する。
[0087]いくつかの例では、デバイスパラメータアナライザ212は、メディアユニット106のユーザ、及び/又はメディアユニットに入力メディア信号202を供給するデバイスのユーザを決定する。たとえば、メディアユニット106がモバイルデバイスに一体化される場合、デバイスパラメータアナライザ212は、ユーザデバイスに関連付けられるログイン及び/又はユーザデバイスに関連付けられる別の識別子に基づいて、モバイルデバイスのユーザを決定することができる。いくつかの例では、ユーザプロファイルを選択して、誰がメディアユニット106に関連付けられるモバイルデバイス及び/又は他のデバイスを利用しているかを示すようにユーザに求めることができる。
[0088]図示される例のデバイスパラメータアナライザ212は、デバイスパラメータアナライザ212がアクセスすることのできる任意のパラメータ(たとえば、位置、ユーザ識別子、ソース識別子など)に基づいて、パーソナライズされたEQ曲線を出力及び/又は調節する。
[0089]図2の図示される例の履歴EQマネージャ214は、後続のパーソナライズされたEQ曲線調節を可能にするために利用される過去の等化曲線に関する履歴データを維持する。たとえば、ユーザがロック音楽を頻繁に聴取し、ロック音楽に最も適しているEQ曲線を頻繁に利用する場合、履歴EQマネージャ214は、ユーザの典型的な音楽プリファレンスに基づいて、パーソナライズされたEQ曲線を調節及び/又は生成するのを助けることができる。たとえば、履歴EQマネージャ214は、定義済みの履歴聴取期間に基づいて、パーソナライズされたEQ曲線を生成することができる。たとえば、履歴EQマネージャ214は、前の1時間の聴取、過去の24時間の聴取、及び/又は任意の他の時間枠に基づいて、パーソナライズされたEQ曲線を生成することができる。換言すれば、履歴EQマネージャ214は、前の期間に関連付けられるEQ設定に基づいて、パーソナライズされたEQ曲線を生成及び/又は調節することができる。履歴EQマネージャ214は、リアルタイムに生成されている1つ又は複数のプロファイル229を取り、EQの各帯域(たとえば、5つの帯域のそれぞれ)についてのそれらの設定を、履歴期間についてのEQ設定を平均する、長期のパーソナライズされたEQフィルタにまとめる。システムが履歴期間にわたって認識した平均曲線が、パーソナライゼーションEQ曲線となる。この曲線は、ユーザが聴取した音楽のタイプの平均EQを反映する。たとえば、ユーザが過去60分にわたってヘビーメタルを聴取した場合、そのユーザは、ユーザが過去60分にわたってトップ40ポップを聴取した場合とは異なるEQ曲線をユーザのユーザプロファイルに記憶していることになる。
[0090]平均化操作は、ローリング平均、IIRフィルタ、時間枠にわたって平均するように設定された係数を有する(全極フィルタ)、又は任意の他の平均化技法でよい。この平均化は、バッファ情報を長期間保持する必要を軽減することができる。履歴EQデータを利用することにより、EQ設定がある程度の「粘性」を有するようにすることができ、以てシステムは、経時的に聴取者のプリファレンスを徐々に学習し、より有用な等化曲線を形成する。
[0091]いくつかの例では、履歴EQマネージャ214は、各ジャンル(ロック、カントリー、音声、ヒップホップなど)についての所与のEQ曲線を求めるテーブルルックアップと共に使用することのできるジャンルの小サブセットを決定する。このジャンルのサブセットに基づいて、EQ曲線を生成、調節又は選択することができる。
[0092]図2の図示される例のユーザ入力アナライザ216は、等化設定に対応するユーザ入力にアクセスし、ユーザ入力に応答する。たとえば、ユーザは、(たとえば、「いいね」ボタンを押すこと、ユーザレーティングを与えることなどによって)特定の等化設定が好ましいかどうかに関する入力を与えることができる。次いで、パーソナライズされたEQ曲線を生成するときに、これらの入力を利用して、ユーザが好むことを示した等化設定をより強く重み付けすることができる。いくつかの例では、定義済みの期間(たとえば、数か月、1年など)にわたってユーザプリファレンスが記憶される。いくつかの例では、特定のユーザアカウント(たとえば、デバイスパラメータアナライザ212によって特定されるユーザログイン)に関連してユーザプリファレンスが記憶される。いくつかの例では、ユーザ入力アナライザ216は、オーディオ信号に適用されている自動化されたパーソナライズされた等化をユーザが取り消したいことを示す「リセット」信号を、聴取者から受信する。いくつかの例では、ユーザ入力アナライザ216は、聴取者からの強度入力に基づいて等化の強度を調節する。
[0093]第2の実装では、EQ調節インプリメンタ220は、入力メディア信号202についての1つ又は複数のプロファイル229に基づいて、入力メディア信号202の再生を修正するように構成される。そのような追加又は代替の例では、EQ調節インプリメンタ220は、1つ又は複数のプロファイル229に基づいて入力メディア信号202の再生を修正するようにアジャスタ(adjustor)を実装する。たとえば、EQ調節インプリメンタ220は、入力メディア信号202(たとえば、コンテンツのストリーム)の再生中に等化を調節及び/又は調整するために、メディアユニット106、メディアデバイス102及び/又はメディアデバイス104のイコライザ及び/又は動的プロセッサの設定を修正又は調節するように1つ又は複数のプロファイル229内の情報を適用することができる。換言すれば、1つ又は複数のプロファイル229は、入力メディア信号202の一部の等化をEQ調節インプリメンタ220に調節させるための情報を含む。メディア(たとえば、コンテンツ)がビデオであるとき、1つ又は複数のプロファイル229を使用して、色温度、ダイナミックレンジ、カラーパレット、輝度、シャープネス、任意の他のビデオ関連の設定などのビデオ設定を調節することができる。
[0094]等化に加えて、EQ調節インプリメンタ220は、等化設定、仮想化設定、空間化設定などの様々な異なる再生設定を調節することができる。たとえば、EQ調節インプリメンタ220は、入力メディア信号202(たとえば、コンテンツのストリーム)に割り当てられたジャンルを特定する情報にアクセスし、特定したジャンルに関連付けられる設定に再生デバイスの等化設定を合わせることによって入力メディア信号202の再生(たとえば、コンテンツのストリーム)を修正することができる。別の例として、EQ調節インプリメンタ220は、コンテンツのストリームの様々な周波数についての信号強度パラメータを特定する情報にアクセスし、信号強度パラメータを使用する設定に再生デバイスの等化設定を合わせることによってコンテンツのストリームの再生を修正することができる。
[0095]第2の実装のいくつかの例では、EQ調節インプリメンタ220は、コンテンツプロファイルエンジン116によって生成された1つ又は複数のプロファイル229と、EQパーソナライゼーションマネージャ210からのパーソナライズされたEQとの間で混合する。たとえば、ユーザプロファイルEQ曲線をリアルタイムプロファイルと混合することができる。いくつかの例では、パーソナライズされたEQ曲線と1つ又は複数のプロファイル229とを混合するために重みが使用され、複数の重みを使用することもできる。一例として、ユーザが最終的に聴取するオーディオを形成する最終EQ曲線は、動的に生成されたフィルタ設定に基づいて現EQの0.5倍でよく、パーソナライズされたEQ曲線の0.5倍である。別の例として、最初の数字は、動的に生成されたフィルタ設定に基づいて現EQに対して0.25でよく、パーソナライズされたEQ曲線に対して0.75でよい。
第3の実装:しきい値処理ベースの等化
[0096]第3の実装では、図2の図示される例の例示的バッファマネージャ230は入力メディア信号202を受信し、入力メディア信号202の一部をデータストア224に記憶する。バッファマネージャ230は、バッファ(たとえば、入力メディア信号202の部分)を任意の持続時間(たとえば、10秒、30秒、1分など)となるように構成することができる。データストア224内のバッファに記憶される入力メディア信号202の部分は、等化特徴を決定するために利用され、以て入力メディア信号202の瞬間特性に基づいて特徴が生成された場合よりも長い入力メディア信号202の持続時間を等化特徴が表すことが可能となる。バッファの持続時間は、等化がどれほどの応答性であるべきかに基づいて調整することができる。たとえば、非常に短いバッファ持続時間の結果、入力メディア信号202のスペクトル特性が変化するとき(たとえば、歌の相異なる部分の間)に等化曲線が急激に変化することがあり、一方、長いバッファ期間は、これらの入力メディア信号202の大きな変化を平均して、より一貫した等化プロファイルを生成する。バッファマネージャ230は、もはやバッファ期間内にない入力メディア信号202の部分を廃棄させることができる。たとえば、バッファ期間が10秒である場合、入力メディア202の一部がバッファ内に10秒間あった後に、この部分が除去される。
[0097]いくつかの例では、ニューラルネットワークが、メディア変化(たとえば、トラック変化、メディアソースの変化など)を特定するために利用され、出力が、メディアの変化に応答して等化を調節するために利用される。たとえば、新しいトラックがニューラルネットワークによって検出されたとき、EQ入力特徴セット239、したがって図4のEQニューラルネットワーク402から受け取ったEQ利得/カット241の迅速な調節(たとえば、EQニューラルネットワーク402から出力される等化調節)を引き起こすように、短期瞬間又は平均音量(たとえば、標準バッファ期間よりも短い期間全体にわたる周波数範囲の音量値、その短い期間全体にわたる周波数範囲の標準偏差値など)を計算することができる。いくつかの例では、メディア変化の間で、トラック全体にわたる等化プロファイルの急速なゆらぎを回避するために、より長い音量平均化技法が利用される(たとえば、30秒音量平均に基づく等化プロファイルを決定すること、45秒音量平均に基づく等化プロファイルを決定することなど)。
[0098]いくつかの例では、ニューラルネットワークを利用してメディア変化を特定することの追加又は代替として、入力メディア信号202で表されるメディアの特性のより急激な変化が生じたときに(たとえば、低音が強いメディアから高音が強いメディアへの遷移)、より高速な等化変化を引き起こすように、ヒステリシスベースの論理を実装することができる。
[0099]いくつかの例では、メディアユニット106は、入力オーディオ信号のソースの変化を検出し、前述の短期等化更新をトリガして(たとえば、短期瞬間又は平均音量を計算し、これらの変化に基づいて等化プロファイルを決定すること)、以前のソースに対する新しいソースからのメディアの違いを補償することができる。
[00100]図2の図示される例の例示的時間-周波数領域コンバータ232は、時間領域表現からの入力メディア信号202を周波数領域表現に変換する。いくつかの例では、時間-周波数領域コンバータ232は高速フーリエ変換(FFT)を利用する。いくつかの例では、時間-周波数領域コンバータ232は、入力メディア信号202を線形空間及び/又は対数空間周波数領域表現に変換する。時間-周波数領域コンバータ232は、任意のタイプの変換(たとえば、短時間フーリエ変換、constant-Q変換、ハートレー変換など)利用して、入力メディア信号202を時間領域表現から周波数領域表現に変換することができる。いくつかの例では、代替として、メディアユニット106は、時間領域で、本明細書で開示されるオーディオ等化技法を実施することができる。
[00101]図2の図示される例の例示的音量計算器234は、入力メディア信号202についての周波数範囲での音量レベルを計算する。いくつかの例では、音量計算器234は、入力メディア信号202の線形空間周波数表現の周波数ビン(たとえば、周波数範囲)についてのバッファ持続時間(たとえば、10秒、30秒など)全体にわたる平均音量レベルを計算する(たとえば、平均音量表現)。図2の図示される例の音量計算器234は、バッファに記憶される入力メディア信号202の部分の平均音量の周波数表現を生成する。追加又は代替として、図2の図示される例の音量計算器234は、周波数ビンについてのバッファ持続時間全体にわたる標準偏差を計算する。いくつかの例では、音量計算器234は、対数空間周波数ビン(たとえば、臨界周波数帯域、Bark帯域など)についての音量レベルを計算する。いくつかの例では、周波数ビンについて平均音量レベルを計算するために、音量計算器234は、入力メディア信号202の周波数表現を実数値に変換する。
[00102]図2の図示される例の例示的エネルギー計算器236は、メディア信号(たとえば、オーディオ信号)についてのエネルギー値を計算する。いくつかの例では、エネルギー計算器236は、等化前(たとえば、バッファに記憶された入力メディア信号202の周波数表現に基づいて)、及び等化曲線が適用された後(たとえば、EQ曲線ジェネレータ240がオーディオ信号の平均周波数表現に等化利得/カットを適用した後)に、オーディオ信号の周波数表現の平方自乗平均(RMS)値を計算する。いくつかの例では、エネルギー計算器236は、(たとえば、バッファ期間全体にわたる任意の瞬間の音量レベルに基づいて)入力メディア信号202の単一の周波数表現のエネルギーを計算し、及び/又はバッファ期間全体にわたる入力メディア信号202の平均周波数表現のエネルギーを計算する。
[00103]いくつかの例では、エネルギー計算器236は、音量ノーマライザ248に等化前及び等化後のエネルギー値を通信して、音量の正規化を可能にし、等化後の全音量の知覚できる変化を回避する。図2の図示される例のエネルギー計算器236は、等化後平均周波数表現のエネルギーを計算する。
[00104]図2の図示される例の例示的入力特徴セットジェネレータ238は、図4のEQニューラルネットワーク402に入力するために、入力メディア信号202に対応する特徴(たとえば、オーディオ特徴)を生成する。いくつかの例では、入力特徴セットジェネレータ238は、バッファ期間全体にわたる入力メディア信号202の周波数表現の周波数ビンについての平均音量測定値、及び/又はバッファ期間全体にわたる入力メディア信号202の周波数表現の周波数ビンについての平均標準偏差測定値を含むセットを生成する。いくつかの例では、入力特徴セットジェネレータ238は、入力メディア信号202について適切な等化設定を利用すべきであると判定する際に図4のEQニューラルネットワーク402を援助するために図4のEQニューラルネットワーク402に配信される任意の利用可能なメタデータをセット内に含むことができる。
[00105]図2の図示される例の例示的EQ曲線マネージャ240は、入力メディア信号202を等化するために利用される等化曲線を決定する。例示的EQ曲線マネージャ240は、例示的音量調節器242、例示的しきい値処理コントローラ244及び例示的EQ曲線ジェネレータ246を含む。
[00106]図2の図示される例の例示的音量調節器242は、EQ利得/カット241を受け取り、入力メディア信号202の平均表現の周波数範囲で音量調節を行う。いくつかの例では、音量調節器242は、オーディオ信号の特定の周波数範囲に適用すべき複数の値(たとえば、スカラ)としてEQ利得/カット241を受け取る。他の例では、これらの値は対数ベースの利得及びカットでよい(たとえば、デシベル単位)。いくつかのそのような例では、EQ利得/カット241は複数の対数空間周波数ビンに対応する。たとえば、EQ利得/カット241は、Bark Band表現で使用される25個の臨界帯域に対応することができる。
[00107]いくつかの例では、EQ利得/カット241を入力メディア信号202のバッファリング済み部分に適用するために、音量調節器242は、(たとえば、時間-周波数領域コンバータ232によって生成された)入力メディア信号202の線形空間周波数表現を、入力メディア信号202の対数空間周波数表現に変換する。いくつかのそのような例では、音量調節器242は、デシベル単位のEQ利得/カット241を対数空間周波数表現の音量レベルに加え、入力メディア信号202のバッファリング済み部分の等化対数空間周波数バージョンを生成することができる。図示される例の音量調節器242は、入力メディア信号202のバッファリング済み部分の等化対数空間周波数バージョンをしきい値処理コントローラ244に通信する。いくつかの例では、EQ利得/カット241は、線形空間周波数表現及び/又は他の表現で実現され、入力メディア信号202のバッファリング済み部分の共通(すなわち、線形空間)表現に適用することができる。
[00108]いくつかの例では、音量調節器242は、入力メディア信号202のソースの技術的限界、及び/又は入力メディア信号202に関する他の技術的特性に関する情報にアクセスし、これらの技術的原型又は特性を利用して、どの周波数範囲が音量の変化を受けるかを改善する。たとえば、音量調節器242は、(たとえば、メディアユニット106のデコーダによって、アーチファクトを符号化するために入力メディア信号202を解析することによって、などで決定される)入力メディア信号202の符号化のタイプに関する情報にアクセスし得る。いくつかのそのような例では、音量調節器242は、オーディオ信号の品質に負の影響を及ぼすことがある音量調節(たとえば、符号化アーチファクトを含む周波数範囲で音量をブーストする調節)を防止することができる。
[00109]図2の図示される例の例示的しきい値処理コントローラ244は、入力メディア信号202のバッファリング済み部分の(たとえば、音量調節器242からの)等化後バージョンを平滑化する技法を実施する。いくつかの例では、音量調節器242が入力メディア信号202のバッファリング済み部分にEQ利得/カット241を適用した後、等化後オーディオ信号の周波数表現が、等化後オーディオ信号中の知覚できるアーチファクトとなることがある局所的異常値(たとえば、等化後オーディオ信号の周波数-音量プロット上の短期ピーク又はディップとして現れる不規則性)を有することがある。本明細書では、局所的異常値という用語は、隣り合う周波数値間の大きな音量差などの、等化後オーディオ信号の周波数-音量プロット上の不規則性を指す。いくつかの例では、局所的異常値は、周波数範囲にわたる音量の2次導関数がしきい値を超えるかどうかを判定することによって検出される。
[00110]図2の図示される例のしきい値処理コントローラ244は、しきい値処理技法を開始する複数の周波数値を選択する。しきい値処理コントローラ244は、複数の周波数値での音量レベルを決定し、次いでこれらの周波数値間の差の尺度を計算する。いくつかの例では、しきい値処理コントローラ244は、複数の周波数値にわたって音量値の2次導関数を計算する。一例として、3つの周波数値の中心値が局所的異常値(たとえば、不規則性)に対応するかどうかを判定するために3つの周波数値が解析されている場合、配列val[]が音量値を含み、添字「i」が周波数値添字に対応するとして、以下の式を利用して2次導関数を計算することができる。
|(val[i-2]-(2(val[i-1])+val[i])| ・・・(式1)
[00111]しきい値処理コントローラ244は、式1の出力をしきい値と比較することができる。いくつかの例では、式1、又は隣り合う周波数値での音量に対する周波数値のうちの1つでの音量の相対的差異を計算するために利用される任意の他の式の出力がしきい値を満たす(たとえば、しきい値を超える)場合、平滑化計算を利用して不規則性を除去することができる。いくつかの例では、しきい値処理コントローラ244が、隣り合う周波数値での音量レベル間の中点に音量を変更することによって、検出した不規則性の音量レベルを調節する。図17Bは、図17Aに表される等化後オーディオ信号中に示される局所的異常値に関してこの中点音量調節を利用する一例を示す。いくつかの例では、しきい値処理コントローラ244は、検出した局所的異常値の音量を変更するために任意の他の技法を利用することができる。たとえば、しきい値処理コントローラ244は、局所的異常値を除去することを試みるために、検出した局所的異常値の音量を、隣り合う周波数値での音量又は何らかの他の音量に等しく設定することができる。
[00112]いくつかの例では、しきい値処理コントローラ244は、不規則性を表す音量レベルを特定するために、等化後オーディオ信号の周波数範囲全体にわたって反復的に移動する。いくつかの例では、しきい値処理コントローラ244は、等化後オーディオ信号の周波数値/範囲のすべてを解析した後、等化後オーディオ信号全体にわたって追加で1回又は複数回反復して、最初の調節段階後に(たとえば、検出した局所的異常値についての音量レベルが変更された後に)局所的異常値が残っているかどうかを判定することができる。いくつかの例では、しきい値処理コントローラ244は、不規則性(たとえば、異常)検出のためにトレーニングされたニューラルネットワーク及び/又は他の人工知能である。いくつかのそのような例では、しきい値処理コントローラ244は、追加の反復を必要とすることなく、1つの調節で不規則性をなくすことができる。
[00113]しきい値処理コントローラ244がオーディオ信号の等化後周波数表現から局所的異常値を除去した後、又は別の停止条件(たとえば、周波数範囲全体にわたって局所的異常値検出及び調節を10回反復する)に達した後に、しきい値処理コントローラ244は、オーディオ信号の最終等化後表現をEQ曲線ジェネレータ246に通信することができ、その結果、EQ曲線ジェネレータ246は、入力メディア信号202に適用する等化曲線を決定することができる。
[00114]図2の図示される例のEQ曲線ジェネレータ246は、入力メディア信号202のバッファリング済み部分に適用する最終的等化曲線を決定する。いくつかの例では、図2の図示される例のEQ曲線ジェネレータ246は、等化のために利用する最終的等化曲線を決定するために、しきい値処理コントローラ244から出力される等化後バージョンから、入力メディア信号202のバッファリング済み部分の元の平均対数空間周波数表現を差し引く。いくつかのそのような例では、この差引きの後、EQ曲線ジェネレータ246は、最終的等化曲線を、バッファリング済みオーディオ信号の周波数領域表現に適用することのできる形式(たとえば、線形空間形式)に変換する。いくつかのそのような例では、次いで、図示される例のEQ曲線ジェネレータ246は、最終EQ曲線(たとえば、最終EQ曲線の線形空間周波数表現)を、対応する表現(たとえば、バッファリング済みオーディオ信号の線形空間周波数表現)に適用する。EQ曲線ジェネレータ246は、得られた等化後オーディオ信号を、エネルギー計算器236、音量ノーマライザ248及び/又は周波数-時間領域コンバータ250に通信することができる。本明細書では、EQ曲線は、オーディオ信号の周波数範囲に対応する利得/カット及び/又は他の音量調節を含む。
[00115]図2の図示される例の例示的音量ノーマライザ248は、入力メディア信号202の等化の前後のエネルギーレベルの変化の指示にアクセスする。図2の図示される例の音量ノーマライザ248は、音量正規化を実施して、等化の前後のオーディオ信号の全変化を補償する。いくつかの例では、入力メディア信号202の等化の前後のエネルギーレベルの変化がしきい値を超える場合、音量ノーマライザ248は、スカラ音量調節を適用して、エネルギーレベルの変化を補償する。いくつかの例では、音量ノーマライザ248はダイナミックレンジ圧縮器を利用することができる。いくつかの例では、エネルギー計算器236は、等化プロセスの前後のエネルギーの比を計算することができ、音量ノーマライザ248は、この比を利用して、この全音量の変化を打ち消すことができる。たとえば、入力メディア信号202のオーディオ部分の全エネルギーが2倍になった場合、音量ノーマライザ248は、全音量カットを適用して、音量を1/2に低減することができる。いくつかの例では、音量ノーマライザ248は、音量正規化を正当化するにはエネルギーの変化が不十分であると判定することができる。図示される例の音量ノーマライザ248は、周波数-時間領域コンバータ250に最終等化後オーディオ信号(適用可能な場合、音量調節後の等化後オーディオ信号)を通信する。
[00116]図2の図示される例の周波数-時間領域コンバータ250は、最終等化後オーディオ信号を周波数領域から時間領域に変換し、最終的にメディアユニット106から出力される。
[00117]図1のメディアユニット106を実装する例示的方法が図2に示されているが、図2に示される要素、プロセス及び/又はデバイスのうちの1つ又は複数を組み合わせ、分割し、再構成し、省略し、除去し、及び/又は任意の他の方法で実装することができる。さらに、例示的信号変換器204、例示的EQモデル照会ジェネレータ206、例示的EQフィルタ設定アナライザ208、例示的EQパーソナライゼーションマネージャ210、例示的デバイスパラメータアナライザ212、例示的履歴EQマネージャ214、例示的ユーザ入力アナライザ216、例示的EQフィルタセレクタ218、例示的EQ調節インプリメンタ220、例示的平滑化フィルタコンフィギュレータ222、例示的データストア224、例示的更新モニタ226、例示的フィンガープリントジェネレータ227、例示的シンクロナイザ228、例示的バッファマネージャ230、例示的時間-周波数領域コンバータ232、例示的音量計算器234、例示的エネルギー計算器236、例示的入力特徴セットジェネレータ238、例示的EQマネージャ240、例示的音量調節器242、例示的しきい値処理コントローラ244、例示的EQ曲線ジェネレータ246、例示的音量ノーマライザ248及び/又は例示的周波数-時間領域コンバータ250、並びに/或いは、より一般には図2の例示的メディアユニット106を、ハードウェア、ソフトウェア、ファームウェア、並びに/或いはハードウェア、ソフトウェア及び/又はファームウェアの任意の組合せによって実装することができる。したがって、たとえば、例示的信号変換器204、例示的EQモデル照会ジェネレータ206、例示的EQフィルタ設定アナライザ208、例示的EQパーソナライゼーションマネージャ210、例示的デバイスパラメータアナライザ212、例示的履歴EQマネージャ214、例示的ユーザ入力アナライザ216、例示的EQフィルタセレクタ218、例示的EQ調節インプリメンタ220、例示的平滑化フィルタコンフィギュレータ222、例示的データストア224、例示的更新モニタ226、例示的フィンガープリントジェネレータ227、例示的シンクロナイザ228、例示的バッファマネージャ230、例示的時間-周波数領域コンバータ232、例示的音量計算器234、例示的エネルギー計算器236、例示的入力特徴セットジェネレータ238、例示的EQマネージャ240、例示的音量調節器242、例示的しきい値処理コントローラ244、例示的EQ曲線ジェネレータ246、例示的音量ノーマライザ248及び/又は例示的周波数-時間領域コンバータ250、並びに/或いは、より一般には図2の例示的メディアユニット106のいずれかを、1つ又は複数のアナログ又はデジタル回路(複数可)、論理回路、プログラマブルプロセッサ(複数可)、プログラマブルコントローラ(複数可)、グラフィックス処理装置(複数可)(GPU(複数可))、デジタル信号プロセッサ(複数可)(DSP(複数可))、特定用途向け集積回路(複数可)(ASIC(複数可))、プログラマブル論理デバイス(複数可)(PLD(複数可))及び/又はフィールドプログラマブル論理デバイス(複数可)(FPLD(複数可))によって実装することができる。純粋にソフトウェア及び/又はファームウェア実装を包含する本特許の装置又はシステムクレームのいずれかを読むとき、例示的信号変換器204、例示的EQモデル照会ジェネレータ206、例示的EQフィルタ設定アナライザ208、例示的EQパーソナライゼーションマネージャ210、例示的デバイスパラメータアナライザ212、例示的履歴EQマネージャ214、例示的ユーザ入力アナライザ216、例示的EQフィルタセレクタ218、例示的EQ調節インプリメンタ220、例示的平滑化フィルタコンフィギュレータ222、例示的データストア224、例示的更新モニタ226、例示的フィンガープリントジェネレータ227、例示的シンクロナイザ228、例示的バッファマネージャ230、例示的時間-周波数領域コンバータ232、例示的音量計算器234、例示的エネルギー計算器236、例示的入力特徴セットジェネレータ238、例示的EQマネージャ240、例示的音量調節器242、例示的しきい値処理コントローラ244、例示的EQ曲線ジェネレータ246、例示的音量ノーマライザ248及び/又は例示的周波数-時間領域コンバータ250、並びに/或いは、より一般には図2の例示的メディアユニット106のうちの少なくとも1つは、ソフトウェア及び/又はファームウェアを含む、メモリ、デジタルバーサタイルディスク(DVD)、コンパクトディスク(CD)、ブルーレイ(Blu-ray)(登録商標)ディスクなどの非一時的コンピュータ可読記憶デバイス又は記憶ディスクを含むように本明細書によって明白に定義される。さらに、図1の例示的メディアユニット106は、図2に示されるものに加えて、又はそれらの代わりに、1つ又は複数の要素、プロセス及び/又はデバイスを含むことができ、並びに/或いは図示される要素、プロセス及びデバイスのうちのいずれか複数又はすべてを含むことができる。本明細書では、「通信している(in communication)」という語句(その変形を含む)は、1つ又は複数の中間構成要素を介する直接的通信及び/又は間接的通信を包含し、直接的物理的(たとえば、ワイヤード)通信及び/又は一定の通信を必要とせず、むしろ周期的間隔、スケジューリングされた間隔、非周期的間隔及び/又はワンタイムイベントの選択的通信をさらに含む。
[00118]図3は、第2の実装による、図1のコンテンツプロファイルエンジン116の追加の詳細を示すブロック図である。例示的コンテンツプロファイルエンジン116は、例示的コンテンツリトリーバ(content retriever)302、例示的フィンガープリントジェネレータ304、例示的コンテンツ識別器306、例示的プロファイラ308及び例示的プロファイルデータストア310を含む。本明細書で説明されるように、いくつかの例では、システム及び方法は、メディアデバイス102、メディアデバイス104及び/又はメディアユニット106にストリーミンング或いは送信すべきメディア(たとえば、コンテンツ)を特定し、ムード、スタイル、又はコンテンツの他の属性に関連付けられる情報を提供する、メディアデバイス102、メディアデバイス104及び/又はメディアユニット106に配信するためのプロファイルを生成及び/又は決定する。いくつかの例では、プロファイルはコンテンツタイプを特定する識別子でよい。たとえば、プロファイルは、メディア(たとえば、コンテンツ)をニュース、アクション映画、スポーツイベントなどと特定することができる。プロファイルに基づいて、TVに関する異なる設定をリアルタイムに(たとえば、オンザフライで)調節することができる。同様に、プロファイルは、ラジオトークショー、歌、ジングル、歌のジャンルなどを特定することができる。したがって、聴取者に配信されるオーディオを向上させるように、オーディオ設定をリアルタイムに(たとえば、オンザフライで)調節することができる。
[00119]図3の例では、コンテンツリトリーバ302は、メディアユニット106に配信する前に、入力メディア信号202(たとえば、再生デバイス(たとえば、メディアデバイス102、メディアデバイス104、メディアユニット106など)に配信すべきコンテンツのストリーム)にアクセス及び/又は検索する。たとえば、コンテンツリトリーバ302は、ネットワーク112を介して再生デバイス(たとえば、メディアデバイス102、メディアデバイス104、メディアユニット106など)に入力メディア信号202(たとえば、コンテンツのストリーム)を供給しているコンテンツプロバイダ114からの入力メディア信号202にアクセスすることができる。別の例として、コンテンツリトリーバ302は、再生デバイス(たとえば、メディアデバイス102、メディアデバイス104、メディアユニット106など)によってローカルに記憶される、コンテンツプロバイダ114からの入力メディア信号202(たとえば、コンテンツのストリーム)にアクセスすることができる。
[00120]図3の例では、コンテンツリトリーバ302は、オーディオコンテンツストリーム、ビデオストリームなどの様々なタイプのメディア(たとえば、様々なタイプのコンテンツストリーム)にアクセスすることができる。たとえば、コンテンツリトリーバ302は、歌又は他の音楽のストリーム、音声コンテンツのストリーム、ポッドキャスト、ユーチューブ(商標)ビデオ及びクリップなどにアクセスすることができる。
[00121]図3の図示される例のフィンガープリントジェネレータ304は、コンテンツプロファイルエンジン116によって受信又はアクセスされた入力メディア信号202(たとえば、コンテンツ)についての識別子(たとえば、フィンガープリント及び/又はシグニチャ)を生成する。たとえば、フィンガープリントジェネレータ304は、とりわけ、入力メディア信号202(たとえば、受信されたコンテンツ)の基準フィンガープリント又は他の識別子を生成するように構成される基準フィンガープリントジェネレータ(たとえば、コンテンツの一部からハッシュ値を計算する構成要素)を含むことができる。いくつかの例では、フィンガープリントジェネレータ304は図1のフィンガープリントジェネレータ115を実装する。
[00122]図3の図示される例では、コンテンツ識別器306は、再生デバイス(たとえば、メディアデバイス102、メディアデバイス104、メディアユニット106など)に配信すべき入力メディア信号202(たとえば、コンテンツのストリーム)内のメディアの一部(たとえば、コンテンツの一部)を特定する。コンテンツ識別器306は、フィンガープリントジェネレータ304によって生成された基準フィンガープリントなどの既知のメディア(たとえば、コンテンツ)の基準フィンガープリントに対する入力メディア信号202(たとえば、コンテンツ)のフィンガープリントの比較を含む様々なプロセスを介して、メディアの部分(たとえば、コンテンツの部分)を特定することができる。たとえば、コンテンツ識別器306は、入力メディア信号202の部分又は入力メディア信号202のフレーム又はフレームのブロックについての照会フィンガープリントを生成及び/又はアクセスして、入力メディア信号202に関連付けられる1つのコンテンツ又はコンテンツのストリームを特定するために、基準フィンガープリントに対する照会フィンガープリントの比較を実施することができる。
[00123]図3に示される例では、プロファイラ308は、入力メディア信号202内の特定された1つ又はセグメント/部分(たとえば、ストリームコンテンツ)についての1つ又は複数のプロファイル229を決定し、再生デバイス(たとえば、メディアデバイス102、メディアデバイス104、メディアユニット106など)に1つ又は複数のプロファイル229を配信する。たとえば、プロファイラ308は、入力メディア信号202についての1つ又は複数の特性を決定することができ、並びに/或いは入力メディア信号202のフレーム又はフレームのブロックなどの入力メディア信号202の複数の部分についての1つ又は複数の特性を決定することができる。いくつかの例では、プロファイラ308は、プロファイルデータストア310に1つ又は複数のプロファイル229を記憶する。
[00124]例示的プロファイラ308は、様々な異なる特性を有する、オーディオコンテンツなどの入力メディア信号202についての1つ又は複数のプロファイル229をレンダリング、生成及び/又は決定することができる。たとえば、1つ又は複数のプロファイル229は、オーディオコンテンツ内の様々な可聴周波数などのEQ設定に関連付けられる特性を含むことができる。1つ又は複数のプロファイル229は様々なタイプの情報を含むことができる。例示的プロファイル情報は、(1)音楽のスタイルについてのカテゴリ(たとえば、ロック、クラシック、ヒップホップ、器楽、音声、ジングルなど)などの、歌に関連付けられるカテゴリを特定する情報、(2)ビデオのスタイル(たとえば、ドラマ、サイエンスフィクション、ホラー、ロマンス、ニュース、TVショー、ドキュメンタリー、広告など)などの、ビデオセグメントに関連付けられるカテゴリを特定する情報、(3)アップビートムード、リラックスしたムード、ソフトムードなどの、歌又はビデオクリップに関連付けられるムードを特定する情報、(4)低音及び他の類似のトーンについての低周波数、音声又は歌唱トーンについての高周波数などの、コンテンツ内の様々な周波数についての信号強度パラメータを特定する情報、並びに/或いは(5)カラーパレット、輝度、シャープネス、動き、ぼやけ、テキスト及び/又はサブタイトル若しくは字幕の存在、前記テキスト又はサブタイトルを有する特定のコンテンツ、シーンカット、ブラックフレーム、ディスプレイフォーマット調節バー/ピラーの存在、顔、ランドスケープ、又は他の物体の存在又は欠如、特定の会社の存在、ネットワーク、或いはブロードキャストロゴなどを特定する情報を含むことができる。
[00125]したがって、1つ又は複数のプロファイル229は、入力メディア信号202の再生属性(たとえば、「DNA」)を表すことができ、とりわけ入力メディア信号202の再生中の体験を最適化し、又は向上させるために、再生属性をメディアユニット106で使用して、再生デバイス(たとえば、メディアデバイス102、メディアデバイス104、メディアユニット106など)を制御することができる。図3に示されるように、コンテンツプロファイルエンジン116は、1つ又は複数のプロファイル229を生成して、メディアユニット106に配信することができ、メディアユニット106は、とりわけ入力メディア信号202(たとえば、コンテンツのストリーム)の再生中に再生デバイス(たとえば、メディアデバイス102、メディアデバイス104、メディアユニット106など)の再生設定を調節する。
[00126]図3の例では、プロファイルデータストア310は、1つ又は複数のプロファイル、1つ又は複数の基準フィンガープリント、並びに/或いは1つ又は複数のプロファイル229を介してメディアユニット106によって実装される動的再生設定調節プロセスに関連する任意の他のデータを記憶する。揮発性メモリ(たとえば、同期型ダイナミックランダムアクセスメモリ(SDRAM)、ダイナミックランダムアクセスメモリ(DRAM)、ラムバスダイナミックランダムアクセスメモリ(RDRAM)など)及び/又は不揮発性メモリ(たとえば、フラッシュメモリなど)によってプロファイルデータストア310を実装することができる。追加又は代替として、ダブルデータレート(DDR)、DDR2、DDR3、モバイルDDR(mDDR)などの1つ又は複数のDDRメモリによってプロファイルデータストア310を実装することができる。追加又は代替として、ハードディスクドライブ(複数可)、コンパクトディスクドライブ(複数可)、デジタルバーサタイルディスクドライブ(複数可)などの1つ又は複数のマスストレージデバイスによってプロファイルデータストア310を実装することができる。図示される例では、プロファイルデータストア310が単一のデータベースとして示されているが、任意の数及び/又はタイプ(複数可)のデータベースによってプロファイルデータストア310を実装することができる。さらに、プロファイルデータストア310に記憶されたデータは、たとえば、バイナリデータ、コンマ区切りデータ、タブ区切りデータ、構造化照会言語(SQL)構造などの任意のデータフォーマットでよい。
[00127]図1のコンテンツプロファイルエンジン116を実装する例示的方法が図3に示されているが、図3に示される要素、プロセス及び/又はデバイスのうちの1つ又は複数を組み合わせ、分割し、再構成し、省略し、除去し、及び/又は任意の他の方法で実装することができる。さらに、例示的コンテンツリトリーバ302、例示的フィンガープリントジェネレータ304、例示的コンテンツ識別器306、例示的プロファイラ308、例示的プロファイルデータストア310、並びに/或いは、より一般には図3の例示的コンテンツプロファイルエンジン116を、ハードウェア、ソフトウェア、ファームウェア、並びに/或いはハードウェア、ソフトウェア及び/又はファームウェアの任意の組合せによって実装することができる。したがって、たとえば、例示的コンテンツリトリーバ302、例示的フィンガープリントジェネレータ304、例示的コンテンツ識別器306、例示的プロファイラ308、例示的プロファイルデータストア310、並びに/或いは、より一般には、図3の例示的コンテンツプロファイルエンジン116のいずれかを、1つ又は複数のアナログ又はデジタル回路(複数可)、論理回路、プログラマブルプロセッサ(複数可)、プログラマブルコントローラ(複数可)、グラフィックス処理装置(複数可)(GPU(複数可))、デジタル信号プロセッサ(複数可)(DSP(複数可))、特定用途向け集積回路(複数可)(ASIC(複数可))、プログラマブル論理デバイス(複数可)(PLD(複数可))及び/又はフィールドプログラマブル論理デバイス(複数可)(FPLD(複数可))によって実装することができる。純粋にソフトウェア及び/又はファームウェア実装を包含する本特許の装置又はシステムクレームのいずれかを読むとき、例示的コンテンツリトリーバ302、例示的フィンガープリントジェネレータ304、例示的コンテンツ識別器306、例示的プロファイラ308、例示的プロファイルデータストア310、及び/又は、より一般には図3の例示的コンテンツプロファイルエンジン116のうちの少なくとも1つは、ソフトウェア及び/又はファームウェアを含む、メモリ、デジタルバーサタイルディスク(DVD)、コンパクトディスク(CD)、ブルーレイディスクなどの非一時的コンピュータ可読記憶デバイス又は記憶ディスクを含むように本明細書によって明白に定義される。さらに、図3の例示的コンテンツプロファイルエンジン116は、図3に示されるものに加えて、又はそれらの代わりに、1つ又は複数の要素、プロセス及び/又はデバイスを含むことができ、並びに/或いは図示される要素、プロセス及びデバイスのうちのいずれか複数又はすべてを含むことができる。本明細書では、「通信している」という語句(その変形を含む)は、1つ又は複数の中間構成要素を介する直接的通信及び/又は間接的通信を包含し、直接的物理的(たとえば、ワイヤード)通信及び/又は一定の通信を必要とせず、むしろ周期的間隔、スケジューリングされた間隔、非周期的間隔及び/又はワンタイムイベントの選択的通信をさらに含む。
[00128]図4は、図1のオーディオEQエンジン118の追加の詳細を示すブロック図である。例示的オーディオEQエンジン118は、少なくとも2つの実装に従って動作するように構成される。いくつかの例では、トレーニング済みモデルがオーディオEQエンジン118上に(たとえば、EQニューラルネットワーク402内に)常駐するが、いくつかの例では、トレーニング済みモデルが、メディアユニット106上での直接的使用のためにエクスポートされる。
[00129]機械学習技法は、ディープラーニングネットワークであっても、他の経験/観察学習システムであっても、たとえば、結果を最適化し、イメージ内の物体の位置を突き止め、音声を理解して音声をテキストに変換し、検索エンジン結果の関連性を改善するために使用することができる。多くの機械学習システムには、機械学習ネットワークの学習及び更新を通じて修正される初期特徴及び/又はネットワーク重みが供給されるが、ディープラーニングネットワークは、解析のために「良好な」特徴を特定するように、それ自体をトレーニングする。多層アーキテクチャを使用して、ディープラーニング技法を利用するマシンは、従来型機械学習技法を使用するマシンよりも良好に生データを処理することができる。評価又は抽象化の様々な層を使用して、高相関値又は弁別的テーマのグループについてのデータを検討することが容易となる。
[00130]機械学習技法は、ニューラルネットワーク、ディープラーニングネットワーク、及び/又は他の経験/観察学習システムであっても、たとえば、最適な結果を生成し、イメージ内の物体の位置を突き止め、音声を理解して音声をテキストに変換し、検索エンジン結果の関連性を改善するために使用することができる。ディープラーニングは、線形及び非線形変換を含む複数の処理層を有するディープグラフを使用してデータ内の高レベル抽象化をモデル化するためにアルゴリズムのセットを使用する機械学習のサブセットである。多くの機械学習システムには、機械学習ネットワークの学習及び更新を通じて修正される初期特徴及び/又はネットワーク重みが供給されるが、ディープラーニングネットワークは、解析のために「良好な」特徴を特定するように、それ自体をトレーニングする。多層アーキテクチャを使用して、ディープラーニング技法を利用するマシンは、従来型機械学習技法を使用するマシンよりも良好に生データを処理することができる。評価又は抽象化の様々な層を使用して、高相関値又は弁別的テーマのグループについてのデータを検討することが容易となる。
[00131]たとえば、畳込みニューラルネットワーク(CNN)を利用するディープラーニングは、畳込みフィルタを使用してデータをセグメント化し、データ内の学習済みの観察可能な特徴の位置を突き止め、特定する。CNNアーキテクチャの各フィルタ又は層は、データの選択性及び不変性を向上させるように入力データを変換する。データのこの抽象化は、マシンが、分類しようと試みているデータ内の特徴に焦点を当て、無関係の背景情報を無視することを可能にする。
[00132]ディープラーニングは、多くのデータセットが低レベル特徴を含む高レベル特徴を含むという理解の上に動作する。たとえばイメージを検査している間、物体を探すのではなく、各部分を形成するモチーフを形成するエッジ、探している物体を形成するエッジを探す方が効率的である。これらの特徴の階層を多くの異なる形式のデータで見つけることができる。
[00133]学習済みの観察可能な特徴は、物体と、教師あり学習中にマシンによって学習される定量化可能な規則性とを含む。良く分類されたデータの大規模なセットを備えるマシンは、新しいデータの順調な分類に関係する特徴を区別及び抽出するように、より良好に装備される。
[00134]転移学習を利用するディープラーニングマシンは、人間のエキスパートによって支持される一定の分類にデータ特徴を適切に結び付けることができる。逆に、同じマシンは、人間のエキスパートによる誤った分類が通知されたとき、分類についてのパラメータを更新することができる。たとえば、設定及び/又は他の構成情報を、学習済みの設定の使用及び/又は他の構成情報によってガイドすることができ、システムがさらに(たとえば、反復的に、及び/又は複数のユーザによって)使用されるにつれて、設定及び/又は他の構成情報についてのいくつかの変動及び/又は他の可能性を、所与の状況について低減することができる。
[00135]例示的ディープラーニングニューラルネットワークを、たとえばエキスパート分類済みデータのセットに関してトレーニングすることができる。このデータのセットは、ニューラルネットワークについての第1のパラメータを構築し、これが教師あり学習の段階となる。教師あり学習の段階の間、所望の挙動が達成されたかどうか、ニューラルネットワークをテストすることができる。EQニューラルネットワーク402をトレーニングするための機械可読命令を表す例示的フローチャートが、図7及び16に関連して図示され、説明される。
第1の実装:フィルタベースの等化
[00136]第1の実装では、図示される例の例示的EQニューラルネットワーク402を、オーディオ再生設定が(たとえば、オーディオエンジニアリングによって)それについて特に調整及び最適化される基準オーディオ信号のライブラリを使用してトレーニングすることができる。いくつかの例では、EQニューラルネットワーク402は、基準オーディオ信号(たとえば、トレーニングデータ408)のうちの1つのサンプルを基準オーディオ信号についての既知のオーディオ再生設定に関連付けることによってトレーニングされる。たとえば、トラックに適用するように推奨される1つ又は複数のフィルタについての利得、周波数及び/又はQ値を、トラックの個々のオーディオ信号サンプルに関連付けることができ、したがって類似のオーディオサンプルを、最適化された再生設定(たとえば、1つ又は複数の推奨されるフィルタについての利得、周波数及び/又はQ値)に関連付けるようにEQニューラルネットワーク402をトレーニングする。いくつかの例では、様々な再生設定に関連付けられる様々なバイアスを示すこともできる。たとえば、最初の10トラックがトレーニングのために利用され、最初の10トラックについてのオーディオ再生設定(たとえば、オーディオ再生設定に対応するEQパラメータ)が第1のエンジニアによって決定され、第2の10トラックがトレーニングのために利用され、第2の10トラックについてのオーディオ再生設定が第2のエンジニアによって決定された場合、第1及び第2のオーディオエンジニアに関連付けられる異なるプリファレンス及び/又はバイアスを学習し、より客観的なモデルを生成するように第1及び第2のオーディオエンジニアを軽減するようにEQニューラルネットワーク402をさらにトレーニングすることができる。
[00137]いくつかの例では、EQニューラルネットワーク402をトレーニングするために損失関数を利用することができる。たとえば、式2は、利用することのできる1つの例示的損失関数を表し、ただしfはヘルツ単位の周波数に対応し、gはデシベル単位の利得に対応し、qはQ値(単位なし)に対応する。
[00138]所望のニューラルネットワーク挙動が達成された(たとえば、特定のしきい値に従って動作するようにマシンがトレーニングされたなど)後に、ニューラルネットワークを使用のために(たとえば、「実際の」データでマシンをテストするためなど)配置することができる。動作中、ニューラルネットワーク挙動を引き続き改善するために、ニューラルネットワーク分類を(たとえば、エキスパートユーザ、エキスパートシステム、基準データベースなどによって)確認又は拒否することができる。次いで、ニューラルネットワーク挙動を決定する分類のためのパラメータが進行中の対話に基づいて更新されるにつれて、例示的ニューラルネットワークは転移学習の状態の状態となる。いくつかの例では、EQニューラルネットワーク402などのニューラルネットワークは、オーディオEQスコアリングエンジン404などの別のプロセスに直接的フィードバックを供給することができる。いくつかの例では、EQニューラルネットワーク402は、(たとえば、クラウドなどを介して)バッファリングされ、別のプロセスに供給される前に(たとえば、EQ確認データ410を介して)確認されるデータを出力する。
[00139]図4の例では、EQニューラルネットワーク402は、オーディオ再生設定トレーニングデータに関連付けられる前の結果データからの入力を受け取り、オーディオ信号に関連付けられるオーディオ再生設定を予測するためのアルゴリズムを出力する。EQニューラルネットワーク402には、いくつかの初期相関を供給することができ、次いでEQニューラルネットワーク402は、進行中の体験から学習することができる。いくつかの例では、EQニューラルネットワーク402は、少なくとも1つのオーディオ再生設定トレーニングデータからフィードバックを継続的に受け取る。図4の例では、オーディオEQエンジン118の動作寿命全体にわたって、EQニューラルネットワーク402がフィードバックを介して継続的にトレーニングされ、必要に応じてEQニューラルネットワーク402及び/又は追加のオーディオ再生設定トレーニングデータ408に基づいて例示的オーディオEQエンジンバリデータ406を更新することができる。EQニューラルネットワーク402は、役割、位置、状況などに基づいて学習及び進化することができる。
[00140]いくつかの例では、EQニューラルネットワーク402によって生成されたモデルの精度のレベルを例示的オーディオEQエンジンバリデータ406によって決定することができる。そのような例では、オーディオEQスコアリングエンジン404及びオーディオEQエンジンバリデータ406の少なくとも一方が、オーディオ再生設定確認データ410のセットを受け取る。そのような例ではさらに、オーディオEQスコアリングエンジン404は、オーディオ再生設定確認データ410に関連する入力(たとえば、CQTデータ)を受け取り、入力に関連する1つ又は複数のオーディオ再生設定を予測する。予測される結果がオーディオEQエンジンバリデータ406に配布される。オーディオEQエンジンバリデータ406は、入力に関連する既知のオーディオ再生設定をさらに受け取り、オーディオEQスコアリングエンジン404から受け取った、予測されるオーディオ再生設定と、既知のオーディオ再生設定を比較する。いくつかの例では、比較は、EQニューラルネットワーク402によって生成されるモデルの精度のレベルを生み出す(たとえば、95個の比較が合致を生み出し、5つが誤りを生み出す場合、モデルは95%の精度であるなど)。EQニューラルネットワーク402が所望のレベルの精度に達した(たとえば、EQニューラルネットワーク402がトレーニングされ、配置の準備ができている)後に、オーディオEQエンジンバリデータ406は、オーディオ再生設定を決定するためにメディアユニット106で使用するために、図2のデータストア224にモデル(たとえば、出力414)を出力することができる。いくつかの例では、トレーニングされた後、EQニューラルネットワーク402は、メディアユニット106に十分に正確なEQフィルタ設定(たとえば、EQフィルタ設定209)を出力する。
第3の実装:しきい値処理ベースの等化
[00141]第3の実装では、オーディオ等化プロファイル(たとえば、利得、カットなど)がそれについて(たとえば、オーディオエンジニアによって)決定された基準オーディオ信号のライブラリを使用して、図示される例の例示的EQニューラルネットワーク402をトレーニングすることができる。図4の図示される例では、EQニューラルネットワーク402は、例示的トレーニングデータ408(たとえば、基準オーディオ信号、EQ曲線及びエンジニアタグ)を受け取る。エンジニアタグは、特定のトラックについて、複数のオーディオエンジニアのうちの誰がトラックについての等化プロファイルを生成したかを示す。いくつかの例では、エンジニアタグをワンホットベクトル(one hot vector)によって表すことができ、ワンホットベクトルの各エントリがエンジニアタグに対応する。いくつかの例では、トラックについての等化プロファイルを生成したエンジニアをEQニューラルネットワーク402に通知することなく、EQニューラルネットワーク402は、様々なオーディオエンジニア間の相対的なスタイルの違いを最終的に平均することができる。たとえば、基準オーディオ信号の第1のセットが、一般に低音周波数範囲をより強調するオーディオエンジニアによって生成されたEQ曲線を有し、基準オーディオ信号の第2のセットが、一般に中間周波数範囲をより強調するオーディオエンジニアによって生成されたEQ曲線を有する場合、EQニューラルネットワーク402は、どのオーディオエンジニアがEQ曲線を生成したかを認識していない場合、トレーニング中にこれらの相対的差異を打ち消すことができる。複数の基準オーディオ信号のうちの1つ及び対応するEQ曲線に関連付けられるエンジニアタグを提供することによって、EQニューラルネットワーク402は、様々な等化スタイルを認識するようにインテリジェントに学習し、EQ入力特徴セット239に応答して出力414(たとえば、EQ利得/カット241)を供給するときに、そのようなスタイルを効果的に利用する。いくつかの例では、EQニューラルネットワーク402は、トレーニングデータ408内の基準オーディオ信号のうちの1つのサンプルを、基準オーディオ信号についての既知のEQ曲線に関連付けることによってトレーニングされる。
[00142]いくつかの例では、プロフェッショナルにエンジニアリングされたトラックを取り、(たとえば、あまり知られていないアーティストの)プロフェッショナルにエンジニアリングされていないトラックのスペクトルエンベロープとの合致を目標にする等化曲線を適用することによってオーディオを劣化させることにより、基準オーディオ信号を生成することができる。次いで、トラックをその元の品質レベルに復元するように等化曲線を適用することによって劣化を戻すようにEQニューラルネットワーク402をトレーニングすることができる。したがって、プロフェッショナルにエンジニアリングされたトラックをこの劣化技法と共に利用して、高音量トレーニングを使用可能にすることができる。
[00143]いくつかの例では、EQニューラルネットワーク402をトレーニングするために損失関数を利用することができる。たとえば、式3は、利用することのできる1つの例示的損失関数を表し、ただしgiはビン「i」内のグラウンドトルース利得値であり、
[00144]所望のニューラルネットワーク挙動が達成された(たとえば、特定のしきい値に従って動作するようにマシンがトレーニングされたなど)後に、ニューラルネットワークを使用のために(たとえば、「実際の」データでマシンをテストするためなど)配置することができる。いくつかの例では、次いで、ニューラルネットワークパラメータ(たとえば、重み)に対してさらに修正又は更新を行うことなく、ニューラルネットワークを使用することができる。
[00145]いくつかの例では、動作中、ニューラルネットワーク挙動を引き続き改善するために、ニューラルネットワーク分類を(たとえば、エキスパートユーザ、エキスパートシステム、基準データベースなどによって)確認又は拒否することができる。次いで、ニューラルネットワーク挙動を決定する分類のためのパラメータが進行中の対話に基づいて更新されるにつれて、例示的ニューラルネットワークは転移学習の状態の状態となる。いくつかの例では、EQニューラルネットワーク402などのニューラルネットワークは、オーディオEQスコアリングエンジン404などの別のプロセスに直接的フィードバックを提供することができる。いくつかの例では、EQニューラルネットワーク402は、(たとえば、クラウドなどを介して)バッファリングされ、別のプロセスに供給される前に確認されるデータを出力する。
[00146]いくつかの例では、EQニューラルネットワーク402には、いくつかの初期相関を供給することができ、次いでEQニューラルネットワーク402は、進行中の体験から学習することができる。いくつかの例では、オーディオEQエンジン118の動作寿命全体にわたって、EQニューラルネットワーク402がフィードバックを介して継続的にトレーニングされ、必要に応じてEQニューラルネットワーク402及び/又は追加のオーディオ再生設定トレーニングデータ408に基づいて例示的オーディオEQエンジンバリデータ406を更新することができる。いくつかの例では、EQニューラルネットワーク402は、役割、位置、状況などに基づいて学習及び進化することができる。
[00147]いくつかの例では、EQニューラルネットワーク402によって生成されるモデルの精度のレベルを例示的オーディオEQエンジンバリデータ406によって決定することができる。そのような例では、オーディオEQスコアリングエンジン404及びオーディオEQエンジンバリデータ406の少なくとも一方が、オーディオ再生設定トレーニングデータ(たとえば、トレーニングデータ408)のセットを受け取る。図4の図示される例のオーディオEQスコアリングエンジン404は、入力412(たとえば、EQ入力特徴セット239)に応答してEQニューラルネットワーク402によって出力された出力414(たとえば、EQ利得/カット241)の有効性を決定することができる。いくつかの例では、オーディオEQスコアリングエンジン404は、確認手順中にオーディオEQエンジンバリデータ406と通信して、入力特徴セットに応答するEQニューラルネットワーク402の出力が、入力412(たとえば、EQ入力特徴セット239)についての既知のEQ曲線にどれほど密接に対応するかを判定する。たとえば、EQ入力特徴セット239は、オーディオエンジニアがそれについてのEQ曲線を生成したオーディオサンプルでよく、オーディオEQエンジンバリデータ406は、EQニューラルネットワーク402によって出力された出力(たとえば、EQ利得/カット241)を、オーディオエンジニアによって生成されたEQ曲線(たとえば、利得/カット)と比較することができる。
[00148]図4の図示される例のEQニューラルネットワーク402は、トレーニングされた後に、メディアユニット106に出力414(たとえば、EQ利得/カット241)を供給することによって入力412(たとえば、EQ入力特徴セット239)に応答する。たとえば、EQニューラルネットワーク402は、少なくとも基準オーディオ信号、EQ曲線及びエンジニアタグに関連付けられる推論に基づいて、複数の等化調節(たとえば、EQ利得/カット241)を決定することができる。いくつかの例では、EQ利得/カット241は、複数の周波数範囲に対応する複数の音量調節値(たとえば、利得/カット)を含む。いくつかの例では、EQ利得/カット241は、複数の周波数範囲に対応する複数の音量調節値を含む。たとえば、EQニューラルネットワーク402によって出力されたEQ利得/カット241は、聴覚の24個の臨界帯域に対応する24個の利得又はカット値を含むことができる。
[00149]いくつかの例では、EQニューラルネットワーク402はユーザの入力(複数可)に基づいて等化設定を学習することができる。たとえば、ユーザが特定の方法(たとえば、低音周波数の音量を増大させ、高音周波数の音量を低減するなど)で等化を継続的に調節する場合、EQニューラルネットワーク402は、これらの調節を学習して、ユーザプリファレンスを反映するEQ利得/カット241を出力する。
[00150]いくつかの例では、比較は、EQニューラルネットワーク402によって生成されるモデルの精度のレベルを生み出す(たとえば、95個の比較が合致を生み出し、5つが誤りを生み出す場合、モデルは95%の精度であるなど)。いくつかの例では、EQニューラルネットワーク402が所望のレベルの精度に達した(たとえば、EQニューラルネットワーク402がトレーニングされ、配置の準備ができている)後に、オーディオEQエンジンバリデータ406は、オーディオ再生設定を決定するためにメディアユニット106で使用するために、図2のデータストア224にモデルを出力することができる。
[00151]図1のオーディオEQエンジン118を実装する例示的方法が図4に示されているが、図4に示される要素、プロセス及び/又はデバイスのうちの1つ又は複数を組み合わせ、分割し、再構成し、省略し、除去し、及び/又は任意の他の方法で実装することができる。さらに、例示的EQニューラルネットワーク402、例示的オーディオEQスコアリングエンジン404、例示的オーディオEQエンジンバリデータ406、並びに/或いは、より一般には、図4の例示的オーディオEQエンジン118を、ハードウェア、ソフトウェア、ファームウェア、並びに/或いはハードウェア、ソフトウェア及び/又はファームウェアの任意の組合せによって実装することができる。したがって、たとえば、例示的EQニューラルネットワーク402、例示的オーディオEQスコアリングエンジン404、例示的オーディオEQエンジンバリデータ406、並びに/或いは、より一般には、図4の例示的オーディオEQエンジン118のいずれかを、1つ又は複数のアナログ又はデジタル回路(複数可)、論理回路、プログラマブルプロセッサ(複数可)、プログラマブルコントローラ(複数可)、グラフィックス処理装置(複数可)(GPU(複数可))、デジタル信号プロセッサ(複数可)(DSP(複数可))、特定用途向け集積回路(複数可)(ASIC(複数可))、プログラマブル論理デバイス(複数可)(PLD(複数可))及び/又はフィールドプログラマブル論理デバイス(複数可)(FPLD(複数可))によって実装することができる。純粋にソフトウェア及び/又はファームウェア実装を包含する本特許の装置又はシステムクレームのいずれかを読むとき、例示的EQニューラルネットワーク402、例示的オーディオEQスコアリングエンジン404、例示的オーディオEQエンジンバリデータ406、並びに/或いは、より一般には、図4の例示的オーディオEQエンジン118のうちの少なくとも1つは、ソフトウェア及び/又はファームウェアを含む、メモリ、デジタルバーサタイルディスク(DVD)、コンパクトディスク(CD)、ブルーレイディスクなどの非一時的コンピュータ可読記憶デバイス又は記憶ディスクを含むように本明細書によって明白に定義される。さらに、図4の例示的オーディオEQエンジン118は、図4に示されるものに加えて、又はそれらの代わりに、1つ又は複数の要素、プロセス及び/又はデバイスを含むことができ、並びに/或いは図示される要素、プロセス及びデバイスのうちのいずれか複数又はすべてを含むことができる。本明細書では、「通信している」という語句(その変形を含む)は、1つ又は複数の中間構成要素を介する直接的通信及び/又は間接的通信を包含し、直接的物理的(たとえば、ワイヤード)通信及び/又は一定の通信を必要とせず、むしろ周期的間隔、スケジューリングされた間隔、非周期的間隔及び/又はワンタイムイベントの選択的通信をさらに含む。
[00152]図1及び2のメディアユニット106を実装するための例示的ハードウェア論理、機械可読命令、ハードウェアで実装された状態機械及び/又はそれらの任意の組合せを表すフローチャートが、図5、6、11、12、14及び15に示されている。機械可読命令は、図18に関連して以下で論じられる例示的プロセッサプラットフォーム1800に示されるプロセッサ1812などのコンピュータプロセッサによる実行のための実行可能プログラム又は実行可能プログラムの部分でよい。CD-ROM、フロッピィディスク、ハードドライブ、DVD、ブルーレイディスク、プロセッサ1812に関連付けられるメモリなどの非一時的コンピュータ可読記憶媒体に記憶されたソフトウェアでプログラムを実施することができるが、代替として、プログラム全体及び/若しくはその部分をプロセッサ1812以外のデバイスによって実行することができ、並びに/又はファームウェア若しくは専用ハードウェアで実施することができる。さらに、図5、6、11、12、14及び15に示されるフローチャートを参照しながら例示的プログラムが説明されるが、代替として、例示的メディアユニット106を実装する多くの他の方法を使用することができる。たとえば、ブロックの実行の順序を変更することができ、及び/又は記載のブロックの一部を変更し、除去し、若しくは組み合わせることができる。追加又は代替として、ソフトウェア又はファームウェアを実行することなく、対応する動作を実施するように構成された1つ又は複数のハードウェア回路(たとえば、ディスクリート及び/又は集積アナログ及び/又はデジタル回路、FPGA、ASIC、比較器、演算増幅器(オペアンプ)、論理回路など)によってブロックのいずれか又はすべてを実装することができる。
[00153]図1及び2のオーディオEQエンジン118を実装するための例示的ハードウェア論理、機械可読命令、ハードウェアで実装された状態機械及び/又はそれらの任意の組合せを表すフローチャートが、図7及び16に示されている。機械可読命令は、図19に関連して以下で論じられる例示的プロセッサプラットフォーム1900に示されるプロセッサ1912などのコンピュータプロセッサによる実行のための実行可能プログラム又は実行可能プログラムの部分でよい。CD-ROM、フロッピィディスク、ハードドライブ、DVD、ブルーレイディスク、プロセッサ1912に関連付けられるメモリなどの非一時的コンピュータ可読記憶媒体に記憶されたソフトウェアでプログラムを実施することができるが、代替として、プログラム全体及び/若しくはその部分をプロセッサ1912以外のデバイスによって実行することができ、並びに/又はファームウェア若しくは専用ハードウェアで実施することができる。さらに、図7及び16に示されるフローチャートを参照しながら例示的プログラムが説明されるが、代替として、例示的オーディオEQエンジン118を実装する多くの他の方法を使用することができる。たとえば、ブロックの実行の順序を変更することができ、及び/又は記載のブロックの一部を変更し、除去し、若しくは組み合わせることができる。追加又は代替として、ソフトウェア又はファームウェアを実行することなく、対応する動作を実施するように構成された1つ又は複数のハードウェア回路(たとえば、ディスクリート及び/又は集積アナログ及び/又はデジタル回路、FPGA、ASIC、比較器、演算増幅器(オペアンプ)、論理回路など)によってブロックのいずれか又はすべてを実装することができる。
[00154]図1及び3のコンテンツプロファイルエンジン116を実装するための例示的ハードウェア論理、機械可読命令、ハードウェアで実装された状態機械及び/又はそれらの任意の組合せを表すフローチャートが、図10に示されている。機械可読命令は、図20に関連して以下で論じられる例示的プロセッサプラットフォーム2000に示されるプロセッサ2012などのコンピュータプロセッサによる実行のための実行可能プログラム又は実行可能プログラムの部分でよい。CD-ROM、フロッピィディスク、ハードドライブ、DVD、ブルーレイディスク、プロセッサ2012に関連付けられるメモリなどの非一時的コンピュータ可読記憶媒体に記憶されたソフトウェアでプログラムを実施することができるが、代替として、プログラム全体及び/若しくはその部分をプロセッサ2012以外のデバイスによって実行することができ、並びに/又はファームウェア若しくは専用ハードウェアで実施することができる。さらに、図10に示されるフローチャートを参照しながら例示的プログラムが説明されるが、代替として、例示的コンテンツプロファイルエンジン116を実装する多くの他の方法を使用することができる。たとえば、ブロックの実行の順序を変更することができ、及び/又は記載のブロックの一部を変更し、除去し、若しくは組み合わせることができる。追加又は代替として、ソフトウェア又はファームウェアを実行することなく、対応する動作を実施するように構成された1つ又は複数のハードウェア回路(たとえば、ディスクリート及び/又は集積アナログ及び/又はデジタル回路、FPGA、ASIC、比較器、演算増幅器(オペアンプ)、論理回路など)によってブロックのいずれか又はすべてを実装することができる。
[00155]前述のように、任意の持続時間にわたって(たとえば、長期間の時間枠にわたって、永続的に、短い事例にわたって、一時的にバッファリングする間、及び/又は情報のキャッシングにわたって)情報が記憶される、ハードディスクドライブ、フラッシュメモリ、読取り専用メモリ、コンパクトディスク、デジタルバーサタイルディスク、キャッシュ、ランダムアクセスメモリ及び/又は任意の他の記憶デバイス若しくは記憶ディスクなどの非一時的コンピュータ及び/又は機械可読媒体に記憶された実行可能命令(たとえば、コンピュータ及び/又は機械可読命令)を使用して、図5、6、7、10、11、12、14、15及び16の例示的プロセスを実装することができる。本明細書では、非一時的コンピュータ可読媒体という用語は、任意のタイプのコンピュータ可読記憶デバイス及び/又は記憶ディスクを含み、伝播信号を除外し、伝送媒体を除外するように明白に定義される。
[00156]「含む(including)」及び「備える(comprising)」(並びにそのすべての形及び時制)は、本明細書では非限定的用語となるように使用される。したがって、クレームが任意の形の「含む(include)」又は「備える(comprise)」(たとえば、comprises、includes、comprising、including、havingなど)を、前文として、又は任意の種類のクレーム列挙内で利用するときはいつでも、対応するクレーム又は列挙の範囲外となることなく、追加の要素、用語などが存在することがあることを理解されたい。本明細書では、「少なくとも」という語句が、たとえばクレームの前文での移行用語として使用されるとき、「備える」及び「含む」が非限定的であるのと同様に非限定的である。「及び/又は」という用語は、たとえばA、B及び/又はCという形などで使用されるとき、(1)Aのみ、(2)Bのみ、(3)Cのみ、(4)AとB、(5)AとC、(6)BとC、及び(7)AとBとCなどの、A、B、Cの任意の組合せ又はサブセットを指す。本明細書の構造、構成要素、項目、物体及び/又は事柄を記述する文脈では、「A及びBの少なくとも一方」という語句は、(1)少なくとも1つのA、(2)少なくとも1つのB、並びに(3)少なくとも1つのA及び少なくとも1つのBのいずれかを含む実装を指すものとする。同様に、本明細書の構造、構成要素、項目、物体及び/又は事柄を記述する文脈では、「A又はBの少なくとも一方」という語句は、(1)少なくとも1つのA、(2)少なくとも1つのB、並びに(3)少なくとも1つのA及び少なくとも1つのBのいずれかを含む実装を指すものとする。本明細書のプロセス、命令、動作、活動及び/又はステップの実施又は実行を記述する文脈では、「A及びBの少なくとも一方」という語句は、(1)少なくとも1つのA、(2)少なくとも1つのB、並びに(3)少なくとも1つのA及び少なくとも1つのBのいずれかを含む実装を指すものとする。同様に、本明細書のプロセス、命令、動作、活動及び/又はステップの実施又は実行を記述する文脈では、「A又はBの少なくとも一方」という語句は、(1)少なくとも1つのA、(2)少なくとも1つのB、並びに(3)少なくとも1つのA及び少なくとも1つのBのいずれかを含む実装を指すものとする。
第1の実装:フィルタベースの等化
[00157]図5は、第1の実装による、メディア特性のリアルタイム解析に基づいてメディア再生設定を動的に調節するように図1及び2のメディアユニット106を実装するために実行することのできる例示的機械可読命令500を表すフローチャートである。先行する図及び関連する説明を参照して、例示的機械可読命令500は、例示的メディアユニット106がオーディオ信号にアクセスすることから始まる(ブロック502)。いくつかの例では、信号変換器204が入力メディア信号202にアクセスする。
[00158]ブロック504で、例示的メディアユニット106はオーディオ信号を周波数表現に変換する。いくつかの例では、信号変換器204が入力メディア信号202を周波数及び/又は特性表現(たとえば、CQT表現、FFT表現など)に変換する。
[00159]ブロック506で、例示的メディアユニット106は周波数表現をEQニューラルネットワークに入力する。いくつかの例では、EQモデル照会ジェネレータ206が、入力メディア信号202の周波数表現をEQニューラルネットワーク402に入力する。いくつかの例では、EQモデル照会ジェネレータ206は、EQニューラルネットワーク402によって出力されたモデルに入力メディア信号202を入力する。
[00160]ブロック508で、例示的メディアユニット106は、利得、周波数及びQ値を含む複数のフィルタ設定にアクセスする。いくつかの例では、EQフィルタ設定アナライザ208が、利得、周波数及びQ値を含む複数のフィルタ設定にアクセスする。いくつかの例では、EQフィルタ設定アナライザ208は、EQニューラルネットワーク402によって出力された利得、周波数及びQ値を含む複数のフィルタ設定(たとえば、フィルタ設定のセット)にアクセスする。いくつかの例では、EQフィルタ設定アナライザ208は、EQニューラルネットワーク402によって出力された1つ又は複数の高シェルフフィルタ、1つ又は複数の低シェルフフィルタ並びに/或いは1つ又は複数のピーキングフィルタにアクセスする。
[00161]ブロック510で、例示的メディアユニット106は、入力メディア信号202に適用する1つ又は複数のフィルタを選択する。いくつかの例では、EQフィルタセレクタ218が、入力メディア信号202に適用する1つ又は複数のフィルタを選択する。たとえば、5帯域フィルタを実装するために、EQフィルタセレクタ218は、EQニューラルネットワーク402によって出力されたフィルタのセットから、1つの低シェルフフィルタ、1つの高シェルフフィルタ及び3つのピーキングフィルタを選択することができる。
[00162]ブロック512で、例示的メディアユニット106は、選択したフィルタ(複数可)の設定に基づいてフィルタ係数を計算する。いくつかの例では、EQフィルタ設定アナライザ208が、選択したフィルタ(複数可)のフィルタ設定に基づいてフィルタ係数を計算し、入力メディア信号202への1つ又は複数のフィルタ(複数可)の適用を可能にする。
[00163]ブロック514で、例示的メディアユニットは等化設定をパーソナライズする。いくつかの例では、EQパーソナライゼーションマネージャ210が等化設定をパーソナライズした(たとえば、EQ設定をパーソナライズした)。等化設定をパーソナライズするための詳細な例示的機械可読命令が、図6に関連して図示され、説明される。
[00164]ブロック516で、例示的メディアユニット106は、前のフィルタ設定(たとえば、前のオーディオ再生設定)から遷移するように、選択したフィルタ(複数可)を平滑化と共に適用する。いくつかの例では、EQ調節インプリメンタ220が、選択したフィルタ(複数可)を適用し、平滑化フィルタコンフィギュレータ222によって示される平滑化フィルタに基づいて新しい再生設定に遷移する。いくつかの例では、EQ調節インプリメンタ220は、平滑化フィルタなしにEQフィルタ(たとえば、オーディオ再生設定)を実装することができる。
[00165]ブロック518で、例示的メディアユニット106は、更新持続時間しきい値が満たされるかどうかを判定する。いくつかの例では、更新モニタ226が、更新持続時間しきい値が満たされるかどうかを判定する。たとえば、更新持続時間しきい値が1秒に設定される場合、更新モニタ226は、前のオーディオ再生設定が決定され、実装されてから1秒が経過したかどうかを判定する。更新持続時間しきい値が満たされることに応答して、処理はブロック502に移る。逆に、更新持続時間しきい値が満たされないことに応答して、処理はブロック520に移る。
[00166]ブロック520で、例示的メディアユニット106は、動的オーディオ再生設定調節が使用可能にされるかどうかを判定する。動的オーディオ再生設定調節が使用可能にされることに応答して、処理はブロック518に移る。逆に、動的オーディオ再生設定調節が可能にされないことに応答して、処理は終了する。
[00167]図6は、等化設定をパーソナライズするように図1及び2のメディアユニット106を実装するために実行することのできる例示的機械可読命令514及び/又は例示的機械可読命令1106を表すフローチャートである。先行する図及び関連する説明を参照して、例示的機械可読命令514及び/又は例示的機械可読命令1106は、例示的メディアユニット106が過去のパーソナライゼーション設定にアクセスすることから始まる(ブロック602)。
[00168]ブロック604で、例示的メディアユニット106は、過去のパーソナライゼーション設定に基づいて、パーソナライズされたEQ曲線を生成し、又は新しいパーソナライズされたEQ曲線を開始する。いくつかの例では、履歴EQマネージャ214が、過去のパーソナライゼーション設定に基づいて、パーソナライズされたEQ曲線を生成し、又は新しいパーソナライズされたEQ曲線を開始する。
[00169]ブロック606で、例示的メディアユニット106は、履歴EQが使用可能にされるかどうかを判定する。いくつかの例では、履歴EQマネージャ214が、履歴EQが使用可能にされる(たとえば履歴等化が使用可能にされる)かどうかを判定する。履歴EQが使用可能にされることに応答して、処理はブロック608に移る。逆に、履歴EQが可能にされないことに応答して、処理はブロック610に移る。
[00170]ブロック608で、例示的メディアユニット106は、履歴期間からのEQ曲線に基づいて、パーソナライズされたEQ曲線を調節する。いくつかの例では、履歴EQマネージャ214が、履歴期間(たとえば、過去の時間、過去の日など)からのEQ曲線に基づいて、パーソナライズされたEQ曲線を調節する。
[00171]ブロック610で、例示的メディアユニット106は、ユーザプリファレンスデータ(たとえば、ユーザのプリファレンスを示すデータ)が利用可能であるかどうかを判定する。いくつかの例では、ユーザ入力アナライザ216が、ユーザプリファレンスデータが利用可能であるかどうかを判定する。たとえば、ユーザ入力アナライザ216は、ユーザが音楽を聴取しながら「いいね」ボタンを押した場合に基づいて、ユーザEQプリファレンスを決定することができる。ユーザプリファレンスデータが利用可能であること(たとえば、ユーザプリファレンスデータの可用性)に応答して、処理はブロック612に移る。逆に、ユーザプリファレンスデータが利用可能ではないないことに応答して、処理はブロック616に移る。
[00172]ブロック612で、メディア例ユニット106は、過去のユーザプリファレンス入力(たとえば、「いいね」レーティングなど)に基づいてEQパラメータを決定する。いくつかの例ではユーザ入力アナライザ216が、過去のユーザプリファレンス入力に基づいてEQパラメータを決定する。
[00173]ブロック614で、例示的メディアユニット106は、過去のユーザプリファレンス入力に基づいて、パーソナライズされたEQ曲線を調節する。いくつかの例では、ユーザ入力アナライザ216が、履歴期間からのEQ曲線に基づいて、パーソナライズされたEQ曲線を調節する。
[00174]ブロック616で、例示的メディアユニット106は、位置データが利用可能であるかどうかを判定する。いくつかの例では、デバイスパラメータアナライザ212が、位置データが利用可能であるかどうかを判定する。位置データが利用可能であること(たとえば、位置データの可用性)に応答して、処理はブロック618に移る。逆に、位置データが利用可能ではないことに応答して、処理はブロック620に移る。
[00175]ブロック618で、例示的メディアユニット106は、デバイスの位置に基づいて、パーソナライズされたEQ曲線を調節する。いくつかの例では、デバイスパラメータアナライザ212が、デバイスの位置に基づいて、パーソナライズされたEQ曲線を調節する。たとえば、デバイスがジムにある場合、デバイスが職場にある場合とは異なる、パーソナライズされたEQ曲線を生成することができる。
[00176]ブロック620で、例示的メディアユニット106は、ユーザ識別が利用可能であるかどうかを判定する。いくつかの例では、デバイスパラメータアナライザ212が、ユーザ識別が利用可能であるかどうかを判定する。ユーザ識別が利用可能であること(たとえば、ユーザ識別の可用性)に応答して、処理はブロック622に移る。逆に、ユーザ識別が利用可能ではないことに応答して、処理はブロック624に移る。
[00177]ブロック622で、例示的メディアユニット106は、ユーザ識別に基づいて、パーソナライズされたEQ曲線を調節する。たとえば、デバイスパラメータアナライザ212が、ほとんどはロック音楽を聴取する(たとえば、履歴EQマネージャ214による)履歴プロファイルを有する第1のユーザがメディアユニット106を使用していると判定することができる。そのような例では、デバイスパラメータアナライザ212は、パーソナライズされたEQ曲線をロック音楽により適するように調節することができる。したがって、履歴EQマネージャ214に記憶されたデータは、特定のユーザ、位置、オーディオを供給するアプリなどに基づいてフィルタリング可能でよい。
[00178]ブロック624で、例示的メディアユニット106は、ソース情報が利用可能であるかどうかを判定する。いくつかの例では、デバイスパラメータアナライザ212が、ソース情報が利用可能であるかどうかを判定する。ソース情報が利用可能であること(たとえば、ソース情報の可用性)に応答して、処理はブロック626に移る。逆に、ソース情報が利用可能ではないことに応答して、処理はブロック628に移る。
[00179]ブロック626で、例示的メディアユニット106は、ソース情報に基づいて、パーソナライズされたEQ曲線を調節する。いくつかの例では、デバイスパラメータアナライザ212が、ソース情報に基づいて、パーソナライズされたEQ曲線を調節する。たとえば、ソース情報は、モバイルデバイスの特定のアプリ(たとえば、音楽アプリ、フィットネスアプリ、オーディオブックアプリなど)を示すことができる。入力メディア信号202のソースに基づいて、パーソナライズされたEQ曲線を調節することができる。
[00180]ブロック628で、例示的メディアユニット106は、動的に生成されたフィルタ出力をパーソナライズされたEQ曲線と混合することによって、入力メディア信号202に適用すべき、選択したEQフィルタ(複数可)を調節する。たとえば、(たとえば、EQニューラルネットワークに発信された照会からの出力に基づいて)動的に生成された曲線及びパーソナライズされたEQ曲線のそれぞれに重みを適用することができ、平均曲線を生成して、入力メディア信号202に適用することができる。したがって、この平均曲線は、トラック並びにパーソナルプリファレンスの間のどちらの変動も反映する。ブロック628の後、機械可読命令514及び/又は機械可読命令1106は、それぞれ機械可読命令500のブロック516、及び機械可読命令1100のブロック1108に戻る。
[00181]図7は、第1の実装による、EQニューラルネットワーク402をトレーニングするように図4のオーディオEQエンジン118を実装するために実行することのできる例示的機械可読命令700を表すフローチャートである。先行する図及び関連する説明を参照して、例示的機械可読命令700は、例示的オーディオEQエンジン118が基準オーディオ信号のライブラリにアクセスすることから始まる(ブロック702)。いくつかの例では、EQニューラルネットワーク402が基準オーディオ信号のライブラリにアクセスする。基準オーディオ信号のライブラリは、それについてのオーディオ再生設定が(たとえば、エキスパートによって)決定されているオーディオ信号を含む。
[00182]ブロック704で、例示的オーディオEQエンジン118は、基準オーディオ信号に関連付けられるEQパラメータにアクセスする。いくつかの例では、EQニューラルネットワーク402が、基準オーディオ信号に関連付けられるEQパラメータ(たとえば、オーディオ再生設定)にアクセスする。たとえば、EQニューラルネットワーク402は、1つ又は複数のフィルタ、1つ又は複数の利得値、周波数値、Q値などにアクセスすることができる。
[00183]ブロック706で、例示的オーディオEQエンジン118は、複数の基準オーディオ信号のうちの基準オーディオ信号を選択する。いくつかの例では、EQニューラルネットワーク402が、複数の基準オーディオ信号のうちの基準オーディオ信号を選択する。
[00184]ブロック708で、例示的オーディオEQエンジン118は基準オーディオ信号をサンプリングする。いくつかの例では、EQニューラルネットワーク402が、所定の数のサンプル(たとえば、300、500など)をオーディオ信号から作成することによって基準オーディオ信号をサンプリングする。
[00185]ブロック710で、例示的オーディオEQエンジン118は、基準オーディオ信号のサンプルを、基準オーディオ信号に対応するEQパラメータ(たとえば、オーディオ再生設定)に関連付ける。いくつかの例では、EQニューラルネットワーク402が、基準オーディオ信号のサンプルを、基準オーディオ信号に対応するEQパラメータに関連付ける。
[00186]ブロック712で、例示的オーディオEQエンジン118は、トレーニングのために使用する追加の基準オーディオ信号があるかどうかを判定する。いくつかの例では、EQニューラルネットワーク402が、トレーニングのために使用する追加の基準オーディオ信号があるかどうかを判定する。トレーニングのために使用する追加の基準オーディオ信号があることに応答して、処理はブロック706に移る。逆に、トレーニングのために使用する追加の基準オーディオ信号がないことに応答して、処理は終了する。
[00187]図8Aは、オーディオ特性のリアルタイム解析に基づく動的オーディオ再生設定調節を受けたが、平滑化フィルタを用いていないオーディオ信号の第1のスペクトログラム800aである。第1のスペクトログラム800aは、水平軸線802(たとえば、x軸線)上のヘルツ単位の周波数値と、垂直軸線804(たとえば、y軸線)上の秒単位のオーディオ信号の時間値とを示す。第1のスペクトログラム800aのシェーディングは、オーディオ信号についての特定の周波数及び時間での、オーディオ信号の振幅を表す。第1のスペクトログラム800aのシェーディングは、多数の周波数でのオーディオ信号振幅間で鋭い遷移を示す。たとえば、第1のスペクトログラム800aのシェーディングは、少なくとも部分的には、平滑化フィルタなしに実装される、本明細書で論じられる動的オーディオ再生設定調節技法によって実装されるオーディオ再生設定間の遷移のために、個々の周波数帯内の明るいシェーディングと暗いシェーディングとの間で急激に遷移する。
[00188]図8Bは、図8Aの第1のスペクトログラム800aについての周波数値に対する平均利得値を示す第1のプロット800bである。第1のプロット800bは、水平軸線806(たとえば、x軸線)上のヘルツ単位の周波数値と、垂直軸線808(たとえば、y軸線)上のデシベル単位の平均利得値とを含む。平滑化なしにオーディオ再生設定が調節されたオーディオ信号の平均利得値を表す第1のプロット800bと、平滑化と共にオーディオ再生設定が調節されたオーディオ信号の平均利得値を表す第2のプロット900bとの比較は、オーディオ再生設定間の遷移時に平滑化フィルタを適用することの利点を示す。
[00189]図9Aは、平滑化フィルタを含む、オーディオ特性のリアルタイム解析に基づく動的オーディオ再生設定調節を受けたオーディオ信号の第2のスペクトログラム900aである。第2のスペクトログラム900aは、水平軸線902(たとえば、x軸線)上のヘルツ単位の周波数値と、垂直軸線904(たとえば、(たとえば、y軸線)上の秒単位の時間値とを含む。第2のスペクトログラム900aは、第1のスペクトログラム800a(図8A)の元の入力オーディオ信号に対応するが、トラック全体にわたってオーディオ再生設定を適用するときに平滑化フィルタが利用された。第1のスペクトログラム800aに比べて、第2のスペクトログラム900aは、多数の周波数でのオーディオ信号振幅間の滑らかな(たとえば、段階的な)遷移を示す。たとえば、第1のスペクトログラム800aのシェーディングは、図8Aの第1のスペクトログラム800aで示される比較的急激な遷移ではなく、個々の周波数帯内の明るいシェーディングと暗いシェーディングとの間で滑らかに遷移する。
[00190]図9Bは、図9Aの第2のスペクトログラム900aでの周波数値に対する平均利得値を示す第2のプロット900bである。第2のプロット900bは、水平軸線906(たとえば、x軸線)上のヘルツ単位の周波数値と、垂直軸線908(たとえば、y軸線)上のデシベル単位の平均利得値とを含む。図8Bの第1のプロット800bに比べて、第2のプロット900bは、多数の周波数帯での平均利得値間のより滑らかな遷移を示す。たとえば、第1のプロット800bで77Hzの周りに見える平均利得値の多数の急激な遷移が、第2のプロット900bでは存在せず、第2のプロット900bは、77Hzの周りで平均利得値の段階的で滑らかな減少を示す。
第2の実装:プロファイルベースの等化
[00191]図10は、再生デバイスにコンテンツのストリーム(たとえば、入力メディア信号202)と共にプロファイル情報(たとえば、1つ又は複数のプロファイル229)を配信するように図1及び3のコンテンツプロファイルエンジン116を実装するために実行することのできる例示的機械可読命令1000を表すフローチャートである。本明細書で説明されるように、いくつかの例では、コンテンツプロファイルエンジン116は、とりわけ、メディアデバイス102、メディアデバイス104及び/又はメディアユニット106に配信すべき入力メディア信号202についての1つ又は複数のプロファイル229を決定及び/又は生成する。先行する図及び関連する説明を参照して、例示的機械可読命令1000は、コンテンツプロファイルエンジン116が再生デバイスに配信すべきコンテンツのストリームにアクセスするときに始まる(ブロック1002)。たとえば、コンテンツリトリーバ302が、ネットワーク112を介して再生デバイスに入力メディア信号202を供給しているコンテンツプロバイダ114からの入力メディア信号202にアクセスすることができる。別の例として、コンテンツリトリーバ302は、再生デバイスによってローカルに記憶される、コンテンツプロバイダ114からの入力メディア信号202(たとえば、コンテンツのストリーム)にアクセスすることができる。本明細書で説明されるように、コンテンツリトリーバ302は、オーディオコンテンツストリーム、ビデオストリームなどの様々なタイプのコンテンツストリームにアクセスすることができる。たとえば、コンテンツリトリーバ302は、歌又は他の音楽のストリーム、音声コンテンツのストリーム、ポッドキャストなどにアクセスすることができる。
[00192]ブロック1004で、コンテンツプロファイルエンジン116は、再生デバイスに配信すべき入力メディア信号202の一部(たとえば、コンテンツのストリーム内のコンテンツの一部)を特定する。たとえば、コンテンツ識別器306は、基準フィンガープリントジェネレータ227によって生成された基準フィンガープリントなどの、既知のコンテンツに関連付けられる基準フィンガープリントのセットに対する、コンテンツについてのフィンガープリントの比較を含む、様々なプロセスを使用して入力メディア信号202の部分を特定することができる。もちろん、コンテンツ識別器306は、1つのコンテンツに関連付けられるメタデータ(たとえば、関連するタイトル、アーティスト、ジャンルなどを特定する情報)、コンテンツプロバイダ114に関連付けられる情報などの他の情報を使用して、1つのコンテンツを特定することができる。
[00193]いくつかの例では、コンテンツ識別器306は、入力メディア信号202の部分(たとえば、1つのコンテンツ)に関連付けられる一定のカテゴリタイプ又はジャンルを特定することができる。たとえば、入力メディア信号202を特定の1つのコンテンツ(たとえば、特定の歌、ユーチューブ(商標)ビデオ/クリップ、TV番組、映画、ポッドキャストなど)と特定する代わりに、コンテンツ識別器306は、本明細書で説明される技法を使用して、入力メディア信号202の部分(たとえば、1つのコンテンツ)に適用されるジャンル又はカテゴリを特定することができる。
[00194]ブロック1006で、コンテンツプロファイルエンジン116は、識別した1つのコンテンツについてのプロファイルを決定する。たとえば、プロファイラ308は、1つのコンテンツの全体部分についての1つ又は複数の特性を決定することができ、及び/或いはコンテンツのフレーム又はフレームのブロックなどの入力メディア信号202の部分(たとえば、1つのコンテンツ)の複数の部分についての1つ又は複数の特性を決定することができる。たとえば、1つ又は複数のプロファイル229は、入力メディア信号202の第1の部分(たとえば、1つのコンテンツ)についての1つ又は複数の特性の第1のセット、入力メディア信号202の第2の部分(たとえば、1つのコンテンツ)についての1つ又は複数の特性の第2のセットなどを含むことができる。
[00195]いくつかの例では、プロファイラ308は、様々な異なる特性を有するオーディオコンテンツなどの入力メディア信号202(たとえば、1つのコンテンツ)についての1つ又は複数のプロファイル229をレンダリング、生成、作成及び/又は決定することができる。たとえば、決定又は生成した1つ又は複数のプロファイル229は、等化(EQ)設定、空間化設定、仮想化設定、ビデオ設定などに関連付けられる特性を含むことができる。
[00196]ブロック1008で、コンテンツプロファイルエンジン116は、再生デバイスに1つ又は複数のプロファイル229を配信する。たとえば、プロファイラ308が、ネットワーク112を介して、又は他の通信チャネルを介して、再生デバイスに1つ又は複数のプロファイル229を配信することができる。
[00197]たとえば、コンテンツプロファイルエンジン116は、カーステレオである再生デバイスにストリーミングすべき歌である1つのコンテンツにアクセスし、歌を、「クラシック音楽」のジャンルに関連付けられる特定の歌と特定し、カーステレオを介して歌を再生するときに使用すべき等化設定のセット(たとえば、歌の中の様々な周波数についての信号強度標識、スピーカ空間化設定など)を含むプロファイルを決定し、カーステレオの動作を制御する、カーエリアネットワーク(CAN)などのカーステレオに関連付けられるネットワークによって消費されるべきカーステレオにプロファイルを配信することができる。
[00198]別の例では、コンテンツプロファイルエンジン116は、ブロードキャストネットワーク又はインターネットを介して、TVセット又はセットトップボックスである再生デバイスにストリーミングすべき映画である1つのコンテンツにアクセスし、映画を、「アクション」のジャンルに関連付けられる、特定の映画としての特定の映画と特定し、多くの高速なアクションシーケンスを保有していると特定し、TVセット又は他のデバイスを介して映画を再生するときに使用すべきイメージ処理設定のセット(たとえば、カラーパレット設定、フレームレートアップスケーリング設定、低コントラストシーンについてのコントラスト強調設定など)を含むプロファイルを決定し、レンダリング、したがってユーザによるコンテンツ体験を調節するためにTVセット又は他のデバイスにプロファイルを配信することができる。
[00199]図11は、修正後再生設定を使用してコンテンツを再生するように図1及び2のメディアユニット106を実装するために実行することのできる例示的機械可読命令1100を表すフローチャートである。本明細書で説明するように、いくつかの例では、メディアユニット106は、とりわけ再生デバイス(たとえば、メディアデバイス102、メディアデバイス104及び/又はメディアユニット106)によるコンテンツの再生を修正又は調節する。先行する図及び関連する説明を参照して、例示的機械可読命令1100は、メディアユニット106が再生デバイスのコンテンツのストリーム又は再生デバイスに関連付けられるコンテンツのストリームを受信及び/又はアクセスするときに始まる(ブロック1102)。たとえば、メディアユニット106、及び/又は、より具体的にはシンクロナイザ228が、再生デバイスによって再生すべき入力メディア信号202(たとえば、コンテンツストリーム)にアクセスすることができる。
[00200]ブロック1104で、メディアユニット106は、コンテンツのストリームに関連付けられるプロファイル情報にアクセスする。たとえば、メディアユニット106、及びより具体的にはシンクロナイザ228は、コンテンツプロファイルエンジン116によって生成されるプロファイル又はプロファイル情報を受信することができる。本明細書で説明されるように、コンテンツプロファイルエンジン116は、既知のコンテンツに関連付けられるフィンガープリントのセットに対する、コンテンツのストリームに関連付けられるフィンガープリントの比較に基づいてコンテンツのストリームを特定することによってプロファイルを決定し、識別した入力メディア信号202(たとえば、コンテンツのストリーム)に関連付けられる1つ又は複数のプロファイル229を選択或いは決定することができる。
[00201]1つ又は複数のプロファイル229は、歌に関連付けられるカテゴリ又はジャンルを特定する情報、アップビートムード、リラックスしたムード、ソフトムードなどの、歌に関連付けられるムードを特定する情報、低音及び他の類似のトーンについての低周波数、音声又は歌唱トーンについての高周波数などの、コンテンツ内の様々な周波数についての信号強度パラメータを特定する情報、音声コンテンツから取得される韻律情報及び/又は言語情報などの様々なタイプの情報を含むことができる。
[00202]追加又は代替として、1つ又は複数のプロファイル229は、ビデオ、又はビデオクリップのセグメントに関連付けられるカテゴリ又はジャンルを特定する情報、ビデオに関連付けられるムードを特定する情報、輝度を特定する情報、カラーパレット、カラーコントラスト、輝度範囲、ぼやけ、ディスプレイフォーマット、ビデオシーン情報、視覚的物体検出及び/又は認識から得られる情報、顔検出及び/又は認識、或いはブロードキャストロゴ検出及び/又は認識アルゴリズム、テキスト又はサブタイトルの存在及び/又は内容、透かしの存在及び/又は内容などを含むことができる。
[00203]ブロック1106で、メディアユニット106は等化設定をパーソナライズする。いくつかの例では、EQパーソナライゼーションマネージャ210が等化設定をパーソナライズする。等化設定をパーソナライズするための詳細な命令は、図6に関連して図示され、説明される。
[00204]ブロック1108で、メディアユニット106は、アクセスしたプロファイル情報、及び/又はブロック1106で生成された、パーソナライズされたEQプロファイルに基づいて、入力メディア信号202(たとえば、コンテンツのストリーム)の再生を修正する。たとえば、EQ調節インプリメンタ220は、1つ又は複数のプロファイル229及びパーソナライズされたEQプロファイルに基づいて生成された混合等化に基づいて、再生デバイス上の入力メディア信号202の再生を修正することができる。別の例では、EQ調節インプリメンタ220は、入力メディア信号202(たとえば、コンテンツのストリーム)の再生中に等化を調節及び/又は調整するために、再生デバイスのイコライザの設定を修正又は調節するように1つ又は複数のプロファイル229内の情報を適用することができる。等化に加えて、EQ調節インプリメンタ220は、仮想化設定、空間化設定などの様々な異なる再生設定を調節することができる。
[00205]いくつかの例では、メディアユニット106は、コンテンツの異なる部分に関係する複数の設定を含むプロファイルにアクセスすることができる。たとえば、歌は、相異なるテンポを有する部分を含むことがあり、歌のために生成された、対応するプロファイルが、とりわけ、「低速」の設定を有する第1の部分と、「高速」の設定を有する第2の部分と、「低速」の設定を有する第3の部分とを含むことがある。メディアユニット106は、再生デバイスとは異なるプラットフォームからプロファイルを受信することができ、プロファイルに含まれる複数の設定を使用して再生設定を正確に調節するために、プロファイルを歌に同期することができる。
[00206]図12は、コンテンツに関連付けられるプロファイル情報に基づいて再生設定を調節するように図1及び2のメディアユニット106を実装するために実行することのできる例示的機械可読命令1200を表すフローチャートである。たとえば、メディアユニット106は、いくつかの例によれば、コンテンツに関連付けられるプロファイル情報に基づいて再生設定を調節することができる。先行する図及び関連する説明を参照して、例示的機械可読命令1200は、メディアユニット106が入力メディア信号202(たとえば、1つのコンテンツ)についての1つ又は複数のプロファイル229にアクセスするときに始まる(ブロック1202)。たとえば、メディアユニット106、及び/又はより具体的には、シンクロナイザ228が、単一の設定プロファイル、複数の設定プロファイルなどの様々なタイプのプロファイルにアクセスすることができる。
[00207]ブロック1204で、メディアユニット106は、入力メディア信号202(たとえば、1つのコンテンツ)に1つ又は複数のプロファイル229を同期する。たとえば、シンクロナイザ228は、入力メディア信号202(たとえば、1つのコンテンツ)に関連付けられるフィンガープリント(複数可)を利用して、1つ又は複数のプロファイル229に入力メディア信号202(たとえば、1つのコンテンツ)を同期することができる。1つ又は複数のプロファイル229は、1つのコンテンツについての既知のフィンガープリントに1つ又は複数の設定を関係付け、入力メディア信号202の再生中に1つのコンテンツに1つ又は複数のプロファイル229を同期するために入力メディア信号202の一部(たとえば、1つのコンテンツ)に設定を位置合せする情報を含むことができる。別の例として、シンクロナイザ228は、1つのコンテンツ内の様々なオーディオイベント(たとえば、スネアヒット、ギターソロの開始、最初のボーカル)を特定し、入力メディア信号202の再生中に1つのコンテンツに1つ又は複数のプロファイル229を同期するために、入力メディア信号202内のイベントに1つ又は複数のプロファイル229を位置合せすることができる。
[00208]ブロック1206で、メディアユニット106は、入力メディア信号202についての同期したプロファイルに基づいて、再生デバイス(たとえば、メディアデバイス102、メディアデバイス104、メディアユニット106など)を利用する入力メディア信号202の再生を修正する。たとえば、EQ調節インプリメンタ220は、入力メディア信号202(たとえば、コンテンツのストリーム)の再生中の等化を調節及び/又は調整するために、1つ又は複数のプロファイル229内の情報を適用して、再生デバイスのイコライザの設定を修正又は調節することができる。同様に、コンテンツがビデオであるとき、1つ又は複数のプロファイル229を使用して、ビデオ関連の設定を調節することができる。
[00209]図13A~13Bは、本開示の教示による例示的コンテンツプロファイルのブロック図である。図13Aは、コンテンツ全体についての単一の設定1302、すなわち「ムード#1」を含むコンテンツプロファイル1300aを示す。一方、図13Bは、1つのコンテンツについての複数の異なる設定を含むコンテンツプロファイル1300bを示す。たとえば、コンテンツプロファイル1300bは、設定の中でもとりわけ、第1の設定1304(たとえば、「ムード#1」)、第2の設定1306(たとえば、「ムード#2」)、第3の設定1308(たとえば、「ムード#3」)及び第4の設定1310(たとえば、「ムード#4」)を含む。したがって、いくつかの例では、メディアユニット106は、とりわけ、コンテンツの再生中の様々な時のコンテンツの再生体験を動的に調節するために、コンテンツの異なる部分に適用すべき異なる設定を含む複合又は多層プロファイルを利用することができる。
[00210]したがって、本明細書で説明されるシステム及び方法は、プロファイル情報(たとえば、コンテンツプロファイル)のリアルタイム又はほぼリアルタイムの処理及び再生デバイスへの配信を容易にするプラットフォームを提供することができ、再生デバイスは、コンテンツプロファイルを利用して、とりわけユーザにコンテンツを再生することに関連する再生体験(たとえば、ビデオ及び/又はオーディオ体験)を調節する。これは、プロファイルを検索又は予測することができるまで、コンテンツのレンダリングの前にコンテンツをバッファリングすることを伴うことがある。一例として、使用履歴に基づいて特定のプロファイルを適用することができる(たとえば、ユーザが、過去数日/数週にわたって日/週のこの時刻に特定のプロファイルに関連付けられる特定のコンテンツタイプを消費しており、したがって使用パターンの決定後に同一のプロファイルが再び適用される)。別の例では、ユーザが特定のタイプのコンテンツ(たとえば、TVドラマと分類されるビデオクリップ)と共に特定のプロファイルのプリファレンスを先に確立しており、したがって前方のコンテンツに進んで、そのプロファイルが、同一又は類似のタイプのコンテンツに対して自動的に適用される。ユーザについてのプロファイルを予測する別の方法は、協調的フィルタリング方法を適用することによるものでよく、他のユーザのプロファイルが、使用パターン、人口統計情報、又はユーザ若しくはユーザグループについての任意の他の情報に基づいて、特定のユーザに対して推論される。さらに別の例は、プロファイル選択を決定し、又はプロファイル選択に影響を及ぼすために、コンテンツソース設定、たとえば、セットトップボックスに接続する入力と、DVDプレーヤ又はゲームコンソールに接続する入力との間などの、TVセットに関する選択された入力などのデバイス設定を含めることである。
[00211]多くの再生デバイスが、(1)オンライン、衛星若しくは地上ラジオ局からのコンテンツ、及び/又はローカルに記憶されたコンテンツプレーヤ(たとえば、CDプレーヤ、MP3プレーヤなど)からのコンテンツを受信及び再生するカーステレオシステム、(2)オンライン、衛星若しくは地上ラジオ局からのコンテンツ、及び/又はローカルに記憶されたコンテンツプレーヤ(たとえば、CDプレーヤ、MP3プレーヤ、TVセット、セットトップボックス(STB)、ゲームコンソールなど)からのコンテンツを受信及び再生するホームステレオシステム、(3)オンライン、衛星若しくは地上ラジオ局からのコンテンツ(たとえば、ビデオ及び/又はオーディオ)、及び/又はローカルに記憶されたコンテンツプレーヤ(たとえば、MP3プレーヤ)からのコンテンツを受信及び再生するモバイルデバイス(たとえば、スマートフォン又はタブレット)などを含む、そのようなプラットフォームを利用することができる。
[00212]いくつかの例では、システム及び方法は、低品質又は低音量記録及び他のコンテンツを改善及び/又は最適化することができる。たとえば、コンテンツプロファイルエンジン116は、コンテンツのストリーム(たとえば、手作りのポッドキャスト)が低オーディオ品質を有すると特定し、コンテンツの再生をブーストするための命令を含むコンテンツの低品質ストリーム用のプロファイルを生成することができる。次いで、メディアユニット106は、とりわけ低品質コンテンツの再生の忠実度をブーストするように再生デバイス(たとえば、モバイルデバイス、メディアデバイス102、メディアデバイス104、メディアユニット106)の再生設定を調節することができる。
[00213]いくつかの例では、システム及び方法は、コンテンツストリーム内の広告などの一定のタイプのコンテンツの品質を低下させることができる。たとえば、コンテンツプロファイルエンジン116は、コンテンツのストリームがコマーシャルブレークを含むことを特定し、コマーシャルブレーク中に再生品質を低下させる、コンテンツのストリーム用のプロファイルを生成することができる。次いで、メディアユニット106は、とりわけコマーシャルブレーク中のコンテンツの再生の忠実度を低下させるように再生デバイス(たとえば、モバイルデバイス、メディアデバイス102、メディアデバイス104、メディアユニット106)の再生設定を調節することができる。もちろん、他のシナリオが可能であり得る。
第3の実装:しきい値処理ベースの等化
[00214]図14は、第3の実装による、オーディオ等化を実施するように図1及び2のメディアユニット106を実装するために実行することのできる例示的機械可読命令1400を表すフローチャートである。先行する図及び関連する説明を参照して、例示的機械可読命令1400は、例示的メディアユニット106が入力メディア信号202をバッファに記憶することから始まる(ブロック1402)。いくつかの例では、例示的バッファマネージャ230がデータストア224に入力メディア信号202を記憶する。いくつかの例では、バッファマネージャ230は、バッファ内のその記憶持続時間(たとえば、10秒、30秒など)を超過した入力メディア信号202の部分を除去する。
[00215]ブロック1404で、例示的メディアユニット106は、バッファリング済みオーディオに対する周波数変換を実施する。いくつかの例では、時間-周波数領域コンバータ232が、バッファ内の入力メディア信号202の部分に対する周波数変換(たとえば、FFT)を実施する。
[00216]ブロック1406で、例示的メディアユニット106は、バッファの持続時間全体にわたる線形空間周波数ビンについての平均値及び標準偏差値を計算する。いくつかの例では、音量計算器234が、バッファの持続時間全体にわたる線形空間周波数ビンについての平均値及び標準偏差値を計算する。いくつかの例では、異なる領域(たとえば、時間領域)で、又は異なる単位間隔(たとえば、対数間隔)で平均音量値を計算することができる。
[00217]ブロック1408で、例示的メディアユニット106は、入力メディア信号202の周波数表現に基づいて事前等化RMS値を計算する。いくつかの例では、エネルギー計算器236が、入力メディア信号202の周波数表現に基づいて事前等化RMS値を計算する。いくつかの例では、エネルギー計算器236は、異なるタイプの計算を利用して、入力メディア信号202のエネルギー値を決定する。
[00218]ブロック1410で、例示的メディアユニット106は、線形空間ビンについての平均値及び標準偏差値をエンジニアタグの表現と共にEQニューラルネットワーク402に入力する。いくつかの例では、入力特徴セットジェネレータ238が、バッファの持続時間全体にわたる線形空間周波数ビンについての平均値及び標準偏差値をEQニューラルネットワーク402に入力する。非参照オーディオ或いは未確認のオーディオについて、エンジニアタグが、可能な値のセット内のある特定の値に設定される。たとえば、オーディオが未確認であるとき、エンジニアタグが常に特定のエンジニア指示に設定されるように入力特徴セットジェネレータ238を構成することができる。いくつかの例では、エンジニアタグがベクトルとして表され、ベクトル要素のうちの1つが、選択されたエンジニアについて「1」に設定され、残りのベクトル要素が「0」に設定される。いくつかの例では、入力メディア信号202についての平均及び/又は標準偏差値を別の形式(たとえば、時間領域フォーマット、平均ではなく瞬間音量など)でEQニューラルネットワーク402に入力することができる。
[00219]ブロック1412で、例示的メディアユニット106は、EQニューラルネットワーク402から、対数空間周波数ビンについての利得/カット値を受け取る。いくつかの例では、音量調節器242が、EQニューラルネットワーク402から、対数空間周波数ビンについての利得/カット値を受け取る。いくつかの例では、利得/カット値は線形空間周波数表現及び/又は別の領域内でよい。
[00220]ブロック1414で、例示的メディアユニット106は、入力メディア信号202の線形空間平均周波数表現を対数空間平均周波数表現に変換する。いくつかの例では、音量調節器242が、対数空間フォーマットで受け取られたEQ利得/カット241を適用するために、入力メディア信号202の線形空間平均周波数表現を対数空間平均周波数表現に変換する。いくつかの例では、EQ利得/カット241が異なるフォーマットで受け取られる場合、音量調節器242は、EQ利得/カット241と同一のフォーマットに対応するように、入力メディア信号202の平均周波数表現を調節する。
[00221]ブロック1416で、例示的メディアユニット106は、対数空間平均周波数表現に利得/カットを適用して、等化後対数空間周波数表現を決定する。いくつかの例では、音量調節器242が、対数空間平均周波数表現に利得/カットを適用して、入力メディア信号202の等化後対数空間平均周波数表現を決定する。機械可読命令1400のすべてのステップと同様に、いくつかの例では、着信オーディオ信号の平均表現に利得/カットを適用することを、異なる領域及び/又は異なる単位間隔で行うことができる。
[00222]ブロック1418で、例示的メディアユニット106は、しきい値処理を実行して等化曲線を平滑化する。いくつかの例では、しきい値処理コントローラ244が、しきい値処理を実行して等化曲線を平滑化する。しきい値処理を実行して等化曲線を平滑化するための詳細な命令が、図15に関連して図示され、説明される。
[00223]ブロック1420で、例示的メディアユニット106は等化後RMS値を計算する。いくつかの例では、しきい値処理コントローラ244が等化曲線の平滑化を終了した後(たとえば、不規則性の削減後)に、エネルギー計算器236が、等化後オーディオ信号に基づいて等化後RMS値を計算する。いくつかの例では、エネルギー計算器236は、等化後オーディオ信号のエネルギーの別の尺度を計算する。いくつかの例では、EQ曲線ジェネレータ246が(たとえば、線形空間周波数表現で)最終的等化曲線を生成し、入力メディア信号202に適用した後に、エネルギー計算器236は等化後RMS値を計算する。
[00224]ブロック1422で、例示的メディアユニット106は、事前等化RMS及び等化後RMSの計算に基づいて音量正規化を決定する。いくつかの例では、エネルギー計算器236は、等化後RMSと事前等化RMSの比(又は他の比較メトリック)を計算し、音量ノーマライザ248が、この比がオーディオ信号のエネルギーの最大許容変化に関連付けられる(たとえば、許容変化に関連付けられる)しきい値を超えているかどうかを判定する。いくつかのそのような例では、比がしきい値を超えていることに応答して、音量ノーマライザ248は、正規化全利得を等化後オーディオ信号に適用する。たとえば、等化後のオーディオ信号の全エネルギーが等化前の全エネルギーの2倍である場合、音量ノーマライザ248は、オーディオ信号の全音量を正規化するために全利得1/2を適用することができる。
[00225]ブロック1424で、例示的メディアユニット106は、オーディオ信号の等化後対数空間周波数表現から平均周波数表現を差し引き、最終的等化曲線を決定する。いくつかの例では、EQ曲線ジェネレータ246が、オーディオ信号の等化後対数空間周波数表現から平均周波数表現を差し引き、最終的等化曲線を決定する。
[00226]ブロック1426で、例示的メディアユニット106は、入力メディア信号202の線形空間周波数表現に最終的等化曲線を適用する。いくつかの例では、EQ曲線ジェネレータ246が最終的等化曲線を適用し、音量ノーマライザ248によって示される全利得調節があればそれをさらに行う。いくつかの例では、EQ曲線ジェネレータ246が最終的等化曲線を適用する前又は後に、音量ノーマライザ248は音量正規化を実施することができる。
[00227]ブロック1428で、例示的メディアユニット106は、入力メディア信号202の等化後周波数表現に対して逆周波数変換を実施する。いくつかの例では、周波数-時間領域コンバータ250が、入力メディア信号202の等化後周波数表現に対して逆周波数変換を実施して、出力メディア信号252を生成する。
[00228]ブロック1430で、例示的メディアユニット106は等化を続行するかどうかを判定する。等化を続行することに応答して、処理はブロック1402に移る。逆に、等化を続行しないことに応答して、処理は終了する。
[00229]図15は、第3の実装による、等化曲線を平滑化するように図1及び2のメディアユニット106を実装するために実行することのできる例示的機械可読命令1500を表すフローチャートである。先行する図及び関連する説明を参照して、例示的機械可読命令1500は、例示的メディアユニット106が複数の周波数値を選択することから始まる(ブロック1502)。いくつかの例では、しきい値処理コントローラ244が、音量の不規則な変化(たとえば、局所的異常値)について解析するために複数の周波数値を選択する。いくつかの例では、しきい値処理コントローラ244は、一度に解析するために、隣り合う周波数値のセット(たとえば、3つの別個の必然的な周波数値)を選択する。
[00230]ブロック1504で、例示的メディアユニット106は複数の周波数値での音量を決定する。いくつかの例では、しきい値処理コントローラ244が複数の周波数値での音量を決定する。
[00231]ブロック1506で、例示的メディアユニット106は、複数の周波数値にわたって音量の2次導関数を決定する。いくつかの例では、しきい値処理コントローラ244が、複数の周波数値にわたって音量の2次導関数を決定する。いくつかの例では、しきい値処理コントローラ244は、別の技法を利用して、複数の周波数値にわたる音量の変化量を決定する。複数の周波数値にわたって音量の2次導関数を決定するための一つの例示的技法は、この説明の上記で図2に関連して説明された式1を利用することを含む。
[00232]ブロック1508で、例示的メディアユニット106は、2次導関数の絶対値がしきい値を超えるかどうかを判定する。いくつかの例ではしきい値処理コントローラ244が、2次導関数の絶対値がしきい値を超えるかどうかを判定する。いくつかの例では、しきい値処理コントローラ244は、複数の周波数値にわたる音量の変化量の別の計算結果をしきい値と比較する。2次導関数の絶対値がしきい値を超えることに応答して、処理はブロック1510に移る。逆に、2次導関数の絶対値がしきい値を超えないことに応答して、処理はブロック1512に移る。
[00233]ブロック1510で、例示的メディアユニット106は、複数の値のうちの中心値の音量レベルを、隣り合う周波数値での音量レベル間の中点となるように調節する。いくつかの例では、しきい値処理コントローラ244が、複数の値のうちの中心値の音量レベルを、隣り合う周波数値での音量レベル間の中点となるように調節する。いくつかの例では、しきい値処理コントローラ244は、別の方法を利用して、複数の値の中心値が隣り合う周波数値での音量により類似するように調節し、以て等化曲線中の不規則性を低減する。
[00234]ブロック1512で、例示的メディアユニット106は、解析する何らかの追加の周波数値があるかどうかを判定する。いくつかの例では、しきい値処理コントローラ244が、解析する何らかの追加の周波数値があるかどうかを判定する。いくつかの例では、しきい値処理コントローラ244は、周波数値のすべてを解析することを1回又は複数回反復する。いくつかの例では、しきい値処理コントローラ244は、すべての不規則性が除去されるまで、又はしきい数の不規則性だけが残るまで反復する。解析する追加の周波数値があることに応答して、処理はブロック1502に移る。逆に、解析する追加の周波数値がないことに応答して、処理は図14の機械可読命令に戻り、ブロック1420に進む。
[00235]図16は、第3の実装による、データセットを集めて、基準オーディオ信号に基づいてニューラルネットワークをトレーニング及び/又は確認するように図4のオーディオEQエンジン118を実装するために実行することのできる例示的機械可読命令1600を表すフローチャートである。先行する図及び関連する説明を参照して、例示的機械可読命令1600は、例示的オーディオEQエンジン118が基準オーディオ信号のライブラリにアクセスすることから始まる(ブロック1602)。いくつかの例では、EQニューラルネットワーク402が、基準オーディオ信号のライブラリにアクセスする。
[00236]ブロック1604で、例示的オーディオEQエンジン118は、基準オーディオ信号に関連付けられる等化曲線にアクセスする。いくつかの例では、EQニューラルネットワーク402が、基準オーディオ信号に関連付けられる等化曲線にアクセスする。
[00237]ブロック1606で、例示的オーディオEQエンジン118は、基準オーディオ信号に関連付けられるエンジニアタグ及び/又は他のメタデータにアクセスする。いくつかの例では、EQニューラルネットワーク402が、基準オーディオ信号に関連付けられるエンジニアタグ及び/又は他のメタデータにアクセスする。
[00238]ブロック1608で、例示的オーディオEQエンジン118は、基準オーディオ信号のサンプルを、対応するEQ曲線及びエンジニアタグ(複数可)に関連付ける。いくつかの例では、EQニューラルネットワーク402が、基準オーディオ信号のサンプルを、対応するEQ曲線及びエンジニアタグ(複数可)に関連付ける。
[00239]ブロック1610で、例示的オーディオEQエンジン118は、トレーニングのために使用する追加の基準オーディオ信号があるかどうかを判定する。いくつかの例では、EQニューラルネットワーク402が、トレーニングに利用するために基準オーディオ信号、EQ曲線、エンジニアタグのうちの追加のものがあるかどうかを判定する。トレーニングのために追加の基準オーディオ信号があることに応答して、処理はブロック1602に移る。逆に、トレーニングのために使用する追加の基準オーディオ信号がないことに応答して、処理は終了する。
[00240]図17Aは、図15に関連して示され、説明される平滑化技法を実施する前の等化後オーディオ信号の例示的な第1のプロット1700aである。
[00241]例示的な第1のプロット1700aは、(たとえば、x軸線にわたって)左から右に増加する周波数値を示す例示的周波数軸線1702を含む。第1のプロット1700aは、(たとえば、y軸線にわたって)下から上に増加する音量値を示す例示的音量軸線1704を含む。一般には、第1のプロット1700aは、オーディオ信号が低い周波数値で高い音量レベルを有し、周波数値が増加するにつれて音量が概して増加することを示す。しかしながら、第1のプロット1700aは例示的不規則性1706を含む。
[00242]第1のプロット1700aは、例示的な第1の周波数値1708、例示的な第2の周波数値1710及び例示的な第3の周波数値1712を含む。第1の周波数値1708は例示的な第1の音量1714に対応し、第2の周波数値1710は例示的な第2の音量1716に対応し、第3の周波数値1712は例示的な第3の音量1718に対応する。メディアユニット106が第1のプロット1700aに示される信号に対するしきい値処理手順を(たとえば、しきい値処理コントローラ244を介して)実行しようとしたとき、メディアユニット106は、第1の周波数値1708と第2の周波数値1710との間、並びに第2の周波数値1710と第3の周波数値1712との間で音量が著しく変化するので、不規則性1706(たとえば、局所的異常値)を検出することができる。しきい値処理コントローラ244が第1の周波数値1708、第2の周波数値1710及び第3の周波数値1712での音量レベル間の音量の2次導関数(又は音量変化の他の尺度)を計算する場合、しきい値処理コントローラ244は、2次導関数がしきい値を超え、不規則性1706に対応すると判定することができる。
[00243]図17Bは、図15に関連して示され、説明される平滑化技法を実施した後の図17Aのオーディオ信号の例示的な第2のプロット1700bである。図17Bの図示される例では、不規則性1706を検出した後、しきい値処理コントローラ244が、第2の周波数値1710(たとえば、解析中の3つの周波数値の中心値)に関連付けられる音量レベルを調節する。図17Bの第2のプロット1700bは、第2の周波数値1710が前の第2の音量1716ではなく、例示的な第4の音量1720に対応することを除いて、第1のプロット1700aとほぼ同一である。図示される例では、しきい値処理コントローラ244は、第2の周波数値1710での音量を第1の音量1714と第3の音量1718の中点に設定することによって、第2の音量1716を第4の音量1720となるように調節した。図示される例では、次いで、これらの周波数値間の等化曲線の残りの部分が、滑らかな線として生成される。図17Bの図示される例では、等化曲線の調節された部分が、第1の音量1714、第4の音量1720及び第3の音量1718を結ぶ破線として示される。しきい値処理コントローラ244は、検出した不規則性での音量レベルを調節するために任意の他の技法を利用することができる。
[00244]図18は、図1及び2のメディアユニット106を実装するために図5、6、11、12、14及び15の命令を実行するように構築された例示的プロセッサプラットフォーム1800のブロック図である。プロセッサプラットフォーム1800は、たとえば、サーバ、パーソナルコンピュータ、ワークステーション、自己学習マシン(たとえば、ニューラルネットワーク)、モバイルデバイス(たとえば、セルフォン、スマートフォン、アイパッド(iPad)(登録商標)などのタブレット)、携帯情報端末(PDA)、インターネットアプライアンス、DVDプレーヤ、CDプレーヤ、デジタルビデオレコーダ、ブルーレイプレーヤ、ゲーミングコンソール、パーソナルビデオレコーダ、セットトップボックス、ヘッドセット若しくは他のウェアラブルデバイス、又は任意の他のタイプのコンピューティングデバイスでよい。
[00245]図示される例のプロセッサプラットフォーム1800はプロセッサ1812を含む。図示される例のプロセッサ1812はハードウェアである。たとえば、所望のファミリ又は製造業者からの1つ又は複数の集積回路、論理回路、マイクロプロセッサ、GPU、DSP或いはコントローラによってプロセッサ1812を実装することができる。ハードウェアプロセッサ1812は半導体ベースの(たとえば、シリコンベースの)デバイスでよい。この例では、プロセッサ1812は、例示的信号変換器204、例示的EQモデル照会ジェネレータ206、例示的EQフィルタ設定アナライザ208、例示的EQパーソナライゼーションマネージャ210、例示的デバイスパラメータアナライザ212、例示的履歴EQマネージャ214、例示的ユーザ入力アナライザ216、例示的EQフィルタセレクタ218、例示的EQ調節インプリメンタ220、例示的平滑化フィルタコンフィギュレータ222、例示的データストア224、例示的更新モニタ226、例示的フィンガープリントジェネレータ227、例示的シンクロナイザ228、例示的バッファマネージャ230、例示的時間-周波数領域コンバータ232、例示的音量計算器234、例示的エネルギー計算器236、例示的入力特徴セットジェネレータ238、例示的EQマネージャ240、例示的音量調節器242、例示的しきい値処理コントローラ244、例示的EQ曲線ジェネレータ246、例示的音量ノーマライザ248及び/又は例示的周波数-時間領域コンバータ250を実装する。
[00246]図示される例のプロセッサ1812はローカルメモリ1813(たとえば、キャッシュ)を含む。図示される例のプロセッサ1812は、バス1818を介して、揮発性メモリ1814及び不揮発性メモリ1816を含むメインメモリと通信している。同期型ダイナミックランダムアクセスメモリ(SDRAM)、ダイナミックランダムアクセスメモリ(DRAM)、ラムバス(登録商標)ダイナミックランダムアクセスメモリ(RDRAM(登録商標))及び/又は任意の他のタイプのランダムアクセスメモリデバイスによって揮発性メモリ1814を実装することができる。フラッシュメモリ及び/又は任意の他の所望のタイプのメモリデバイスによって不揮発性メモリ1816を実装することができる。メインメモリ1814、1816へのアクセスが、メモリコントローラによって制御される。
[00247]図示される例のプロセッサプラットフォーム1800はインターフェース回路1820も含む。イーサネットインターフェース、ユニバーサルシリアルバス(USB)、ブルートゥース(登録商標)インターフェース、近距離場通信(NFC)インターフェース及び/又はPCI expressインターフェースなどの任意のタイプのインターフェース規格によってインターフェース回路1820を実装することができる。
[00248]図示される例では、1つ又は複数の入力デバイス1822がインターフェース回路1820に接続される。入力デバイス(複数可)1822は、ユーザがプロセッサ1812にデータ及び/又はコマンドを入力することを可能にする。たとえば、オーディオセンサ、マイクロフォン、カメラ(スチル又はビデオ)、キーボード、ボタン、マウス、タッチスクリーン、トラックパッド、トラックボール、isopoint及び/又は音声認識システムによって入力デバイス(複数可)を実装することができる。
[00249]図示される例のインターフェース回路1820には1つ又は複数の出力デバイス1824も接続される。たとえば、ディスプレイデバイス(たとえば、発光ダイオード(LED)、有機発光ダイオード(OLED)、液晶ディスプレイ(LCD)、陰極線管ディスプレイ(CRT)、インプレーンスイッチング(IPS)ディスプレイ、タッチスクリーンなど)、触覚出力デバイス、プリンタ及び/又はスピーカによって出力デバイス1824を実装することができる。したがって、図示される例のインターフェース回路1820は、通常はグラフィックスドライバカード、グラフィックスドライバチップ及び/又はグラフィックスドライバプロセッサを含む。
[00250]図示される例のインターフェース回路1820は、ネットワーク1826を介する外部マシン(たとえば、任意の種類のコンピューティングデバイス)とのデータの交換を容易にするために、送信機、受信機、トランシーバ、モデム、住居ゲートウェイ、ワイヤレスアクセスポイント及び/又はネットワークインターフェースなどの通信デバイスも含む。通信は、たとえば、イーサネット接続、デジタル加入者線(DSL)接続、電話回線接続、同軸ケーブルシステム、衛星システム、line-of-siteワイヤレスシステム、セルラ電話システムなどを介するものでよい。
[00251]図示される例のプロセッサプラットフォーム1800は、ソフトウェア及び/又はデータを記憶するための1つ又は複数のマスストレージデバイス1828も含む。そのようなマスストレージデバイス1828の例は、フロッピィディスクドライブ、ハードドライブディスク、コンパクトディスクドライブ、ブルーレイディスクドライブ、redundant array of independent disks(RAID)システム及びデジタルバーサタイルディスク(DVD)ドライブを含む。
[00252]図18の機械可読命令1832、図5の機械可読命令500、図6の機械可読命令514、図11の機械可読命令1100、図6の機械可読命令1106、図12の機械可読命令1200、図14の機械可読命令1400及び/又は図15の機械可読命令1418を、マスストレージデバイス1828、揮発性メモリ1814、不揮発性メモリ1816、及び/又はCDやDVDなどの取外し可能非一時的コンピュータ可読記憶媒体に記憶することができる。
[00253]図19は、図1及び4のオーディオEQエンジン118を実装するために図7及び16の命令を実行するように構築された例示的プロセッサプラットフォーム1900のブロック図である。プロセッサプラットフォーム1900は、たとえば、サーバ、パーソナルコンピュータ、ワークステーション、自己学習マシン(たとえば、ニューラルネットワーク)、モバイルデバイス(たとえば、セルフォン、スマートフォン、アイパッド(商標)などのタブレット)、携帯情報端末(PDA)、インターネットアプライアンス、DVDプレーヤ、CDプレーヤ、デジタルビデオレコーダ、ブルーレイプレーヤ、ゲーミングコンソール、パーソナルビデオレコーダ、セットトップボックス、ヘッドセット若しくは他のウェアラブルデバイス、又は任意の他のタイプのコンピューティングデバイスでよい。
[00254]図示される例のプロセッサプラットフォーム1900はプロセッサ1912を含む。図示される例のプロセッサ1912はハードウェアである。たとえば、所望のファミリ又は製造業者からの1つ又は複数の集積回路、論理回路、マイクロプロセッサ、GPU、DSP或いはコントローラによってプロセッサ1912を実装することができる。ハードウェアプロセッサ1912は半導体ベースの(たとえば、シリコンベースの)デバイスでよい。この例では、プロセッサ1912は、例示的EQニューラルネットワーク402、例示的オーディオEQスコアリングエンジン404及び/又は例示的オーディオEQエンジンバリデータ406を実装する。
[00255]図示される例のプロセッサ1912はローカルメモリ1913(たとえば、キャッシュ)を含む。図示される例のプロセッサ1912は、バス1918を介して、揮発性メモリ1914及び不揮発性メモリ1916を含むメインメモリと通信している。同期型ダイナミックランダムアクセスメモリ(SDRAM)、ダイナミックランダムアクセスメモリ(DRAM)、ラムバス(登録商標)ダイナミックランダムアクセスメモリ(RDRAM(登録商標))及び/又は任意の他のタイプのランダムアクセスメモリデバイスによって揮発性メモリ1914を実装することができる。フラッシュメモリ及び/又は任意の他の所望のタイプのメモリデバイスによって不揮発性メモリ1916を実装することができる。メインメモリ1914、1916へのアクセスが、メモリコントローラによって制御される。
[00256]図示される例のプロセッサプラットフォーム1900はインターフェース回路1920も含む。イーサネットインターフェース、ユニバーサルシリアルバス(USB)、ブルートゥース(登録商標)インターフェース、近距離場通信(NFC)インターフェース及び/又はPCI expressインターフェースなどの任意のタイプのインターフェース規格によってインターフェース回路1920を実装することができる。
[00257]図示される例では、1つ又は複数の入力デバイス1922がインターフェース回路1920に接続される。入力デバイス(複数可)1922は、ユーザがプロセッサ1912にデータ及び/又はコマンドを入力することを可能にする。たとえば、オーディオセンサ、マイクロフォン、カメラ(スチル又はビデオ)、キーボード、ボタン、マウス、タッチスクリーン、トラックパッド、トラックボール、isopoint及び/又は音声認識システムによって入力デバイス(複数可)を実装することができる。
[00258]図示される例のインターフェース回路1920には1つ又は複数の出力デバイス1924も接続される。たとえば、ディスプレイデバイス(たとえば、発光ダイオード(LED)、有機発光ダイオード(OLED)、液晶ディスプレイ(LCD)、陰極線管ディスプレイ(CRT)、インプレーンスイッチング(IPS)ディスプレイ、タッチスクリーンなど)、触覚出力デバイス、プリンタ及び/又はスピーカによって出力デバイス1924を実装することができる。したがって、図示される例のインターフェース回路1920は、通常はグラフィックスドライバカード、グラフィックスドライバチップ及び/又はグラフィックスドライバプロセッサを含む。
[00259]図示される例のインターフェース回路1920は、ネットワーク1926を介する外部マシン(たとえば、任意の種類のコンピューティングデバイス)とのデータの交換を容易にするために、送信機、受信機、トランシーバ、モデム、住居ゲートウェイ、ワイヤレスアクセスポイント及び/又はネットワークインターフェースなどの通信デバイスも含む。通信は、たとえば、イーサネット接続、デジタル加入者線(DSL)接続、電話回線接続、同軸ケーブルシステム、衛星システム、line-of-siteワイヤレスシステム、セルラ電話システムなどを介するものでよい。
[00260]図示される例のプロセッサプラットフォーム1900は、ソフトウェア及び/又はデータを記憶するための1つ又は複数のマスストレージデバイス1928も含む。そのようなマスストレージデバイス1928の例は、フロッピィディスクドライブ、ハードドライブディスク、コンパクトディスクドライブ、ブルーレイディスクドライブ、redundant array of independent disks(RAID)システム及びデジタルバーサタイルディスク(DVD)ドライブを含む。
[00261]図19の機械可読命令1932、図7の機械可読命令700及び/又は図16の機械可読命令1600を、マスストレージデバイス1928、揮発性メモリ1914、不揮発性メモリ1916、及び/又はCDやDVDなどの取外し可能非一時的コンピュータ可読記憶媒体に記憶することができる。
[00262]図20は、図1及び3のコンテンツプロファイルエンジン116を実装するために図10の命令を実行するように構築された例示的プロセッサプラットフォーム2000のブロック図である。プロセッサプラットフォーム2000は、たとえば、サーバ、パーソナルコンピュータ、ワークステーション、自己学習マシン(たとえば、ニューラルネットワーク)、モバイルデバイス(たとえば、セルフォン、スマートフォン、アイパッド(商標)などのタブレット)、携帯情報端末(PDA)、インターネットアプライアンス、DVDプレーヤ、CDプレーヤ、デジタルビデオレコーダ、ブルーレイプレーヤ、ゲーミングコンソール、パーソナルビデオレコーダ、セットトップボックス、ヘッドセット若しくは他のウェアラブルデバイス、又は任意の他のタイプのコンピューティングデバイスでよい。
[00263]図示される例のプロセッサプラットフォーム2000はプロセッサ2012を含む。図示される例のプロセッサ2012はハードウェアである。たとえば、所望のファミリ又は製造業者からの1つ又は複数の集積回路、論理回路、マイクロプロセッサ、GPU、DSP或いはコントローラによってプロセッサ2012を実装することができる。ハードウェアプロセッサ2012は半導体ベースの(たとえば、シリコンベースの)デバイスでよい。この例では、プロセッサ2012は、例示的コンテンツリトリーバ302、例示的フィンガープリントジェネレータ304、例示的コンテンツ識別器306、例示的プロファイラ308及び/又は例示的プロファイルデータストア310を実装する。
[00264]図示される例のプロセッサ2012はローカルメモリ2013(たとえば、キャッシュ)を含む。図示される例のプロセッサ2012は、バス2018を介して、揮発性メモリ2014及び不揮発性メモリ2016を含むメインメモリと通信している。同期型ダイナミックランダムアクセスメモリ(SDRAM)、ダイナミックランダムアクセスメモリ(DRAM)、ラムバス(登録商標)ダイナミックランダムアクセスメモリ(RDRAM(登録商標))及び/又は任意の他のタイプのランダムアクセスメモリデバイスによって揮発性メモリ2014を実装することができる。フラッシュメモリ及び/又は任意の他の所望のタイプのメモリデバイスによって不揮発性メモリ2016を実装することができる。メインメモリ2014、2016へのアクセスが、メモリコントローラによって制御される。
[00265]図示される例のプロセッサプラットフォーム2000はインターフェース回路2020も含む。イーサネットインターフェース、ユニバーサルシリアルバス(USB)、ブルートゥース(登録商標)インターフェース、近距離場通信(NFC)インターフェース及び/又はPCI expressインターフェースなどの任意のタイプのインターフェース規格によってインターフェース回路2020を実装することができる。
[00266]図示される例では、1つ又は複数の入力デバイス2022がインターフェース回路2020に接続される。入力デバイス(複数可)2022は、ユーザがプロセッサ2012にデータ及び/又はコマンドを入力することを可能にする。たとえば、オーディオセンサ、マイクロフォン、カメラ(スチル又はビデオ)、キーボード、ボタン、マウス、タッチスクリーン、トラックパッド、トラックボール、isopoint及び/又は音声認識システムによって入力デバイス(複数可)を実装することができる。
[00267]図示される例のインターフェース回路2020には1つ又は複数の出力デバイス2024も接続される。たとえば、ディスプレイデバイス(たとえば、発光ダイオード(LED)、有機発光ダイオード(OLED)、液晶ディスプレイ(LCD)、陰極線管ディスプレイ(CRT)、インプレーンスイッチング(IPS)ディスプレイ、タッチスクリーンなど)、触覚出力デバイス、プリンタ及び/又はスピーカによって出力デバイス2024を実装することができる。したがって、図示される例のインターフェース回路2020は、通常はグラフィックスドライバカード、グラフィックスドライバチップ及び/又はグラフィックスドライバプロセッサを含む。
[00268]図示される例のインターフェース回路2020は、ネットワーク2026を介する外部マシン(たとえば、任意の種類のコンピューティングデバイス)とのデータの交換を容易にするために、送信機、受信機、トランシーバ、モデム、住居ゲートウェイ、ワイヤレスアクセスポイント及び/又はネットワークインターフェースなどの通信デバイスも含む。通信は、たとえば、イーサネット接続、デジタル加入者線(DSL)接続、電話回線接続、同軸ケーブルシステム、衛星システム、line-of-siteワイヤレスシステム、セルラ電話システムなどを介するものでよい。
[00269]図示される例のプロセッサプラットフォーム2000は、ソフトウェア及び/又はデータを記憶するための1つ又は複数のマスストレージデバイス2028も含む。そのようなマスストレージデバイス2028の例は、フロッピィディスクドライブ、ハードドライブディスク、コンパクトディスクドライブ、ブルーレイディスクドライブ、redundant array of independent disks(RAID)システム及びデジタルバーサタイルディスク(DVD)ドライブを含む。
[00270]図20の機械可読命令2032及び/又は図10の機械可読命令1000を、マスストレージデバイス2028、揮発性メモリ2014、不揮発性メモリ2016、及び/又はCDやDVDなどの取外し可能非一時的コンピュータ可読記憶媒体に記憶することができる。
[00271]上記から、オーディオ信号を解析し、ニューラルネットワークを利用して最適なオーディオ再生設定を決定することによって、個々のトラックの変化、トラック間の変化、ジャンルの変化、及び/又はオーディオ信号の任意の他の変化に適応するようにオーディオ再生設定を動的に調節する例示的方法、装置及び製造品が開示されたことを理解されよう。さらに、平滑化フィルタを利用して、音量レベル又は等化設定の知覚できる鋭いシフトなしにオーディオ再生設定をインテリジェントに調節する例示的方法、装置及び製造品が開示された。さらに、本明細書で開示される技法は、トラック間の動的調節並びに(パーソナライズされたEQプロファイルで表される)ユーザプリファレンスを同期する等化手法を可能にする。
[00272]さらに、本明細書で開示される例示的方法、装置及び製造品は、オーディオ信号をインテリジェントに等化し、ソース及び/又はオーディオ信号の他の特性(たとえば、ジャンル、存在する楽器など)の違いを補償する。本明細書で開示される例示的技法は、オーディオエンジニアによって等化され、基準オーディオ信号を等化した特定のオーディオエンジニアの指示と共にニューラルネットワークに入力された基準オーディオ信号でトレーニングされたニューラルネットワークを利用する。そのようなトレーニングの利用により、ニューラルネットワークがエキスパート等化出力を供給し、異なるトラック間、さらには同一トラック内の両方の微妙な調節を行うことが可能となる。さらに、本明細書で開示される例示的技法は、しきい値処理技法を実施することによってニューラルネットワークの等化出力を改善し、着信オーディオ信号に対して適用される最終的等化曲線が滑らかであり、聴取者に知覚できる最小限の不規則性を有することを保証する。
[00273]オーディオ特性の解析に基づいてオーディオ再生設定を調節するための例示的方法、装置、システム及び製造品が本明細書で開示される。さらなる実施例及びそれらの組合せは以下を含む。
[00274]実施例1は、ニューラルネットワークへの照会を生成するための等化(EQ)モデル照会ジェネレータであって、照会が、オーディオ信号のサンプルの表現を含む、EQモデル照会ジェネレータと、照会に基づいて、ニューラルネットワークによって決定された複数のオーディオ再生設定にアクセスし、複数のオーディオ再生設定に基づいて、オーディオ信号に適用するためのフィルタ係数を決定するためのEQフィルタ設定アナライザと、第1の持続時間にオーディオ信号にフィルタ係数を適用するためのEQ調節インプリメンタとを備える装置を含む。
[00275]実施例2は、オーディオ信号のサンプルの表現がオーディオ信号のサンプルの周波数表現に対応する、実施例1の装置を含む。
[00276]実施例3は、複数のオーディオ再生設定が1つ又は複数のフィルタを含み、1つ又は複数のフィルタのそれぞれが、オーディオ信号のサンプルに関連付けられる1つ又は複数のそれぞれの利得値、それぞれの周波数値、及びそれぞれの品質係数値のうちの1つ又は複数を含む、実施例1の装置を含む。
[00277]実施例4は、EQフィルタ設定アナライザが、オーディオ信号に適用すべきフィルタ係数に関連付けられるフィルタのタイプに基づいて、オーディオ信号に適用するためのフィルタ係数を決定するためのものである、実施例1の装置を含む。
[00278]実施例5は、EQ調節インプリメンタが、オーディオ信号に平滑化フィルタを適用して、第1の持続時間と第2の持続時間との間のオーディオ信号の平均利得値の鋭い遷移を低減するためのものである、実施例1の装置を含む。
[00279]実施例6は、オーディオ信号をオーディオ信号のサンプルの周波数表現に変換するための信号変換器をさらに含む、実施例1の装置を含む。
[00280]実施例7は、EQ調節インプリメンタが、フィルタ係数に基づいて、オーディオ信号の振幅特性、周波数特性及び位相特性のうちの少なくとも1つを調節するためのものである、実施例1の装置を含む。
[00281]実施例8は、実行されるとき、1つ又は複数のプロセッサに、少なくとも、ニューラルネットワークへの照会を生成することであって、照会が、オーディオ信号のサンプルの表現を含むこと、照会に基づいて、ニューラルネットワークによって決定された複数のオーディオ再生設定にアクセスすること、複数のオーディオ再生設定に基づいて、オーディオ信号に適用するためのフィルタ係数を決定すること、及び第1の持続時間にオーディオ信号にフィルタ係数を適用することを行わせる命令を含む非一時的コンピュータ可読記憶媒体を含む。
[00282]実施例9は、オーディオ信号のサンプルの表現が、オーディオ信号のサンプルの周波数表現に対応する、実施例8の非一時的コンピュータ可読記憶媒体を含む。
[00283]実施例10は、複数のオーディオ再生設定が1つ又は複数のフィルタを含み、1つ又は複数のフィルタのそれぞれが、オーディオ信号のサンプルに関連付けられるそれぞれの利得値、それぞれの周波数値、及びそれぞれの品質係数値のうちの1つ又は複数を含む、実施例8の非一時的コンピュータ可読記憶媒体を含む。
[00284]実施例11は、命令が、実行されるとき、1つ又は複数のプロセッサに、オーディオ信号に適用すべきフィルタ係数に関連付けられるフィルタのタイプに基づいて、オーディオ信号に適用するためのフィルタ係数を決定させる、実施例8の非一時的コンピュータ可読記憶媒体を含む。
[00285]実施例12は、命令が、実行されるとき、1つ又は複数のプロセッサに、オーディオ信号に平滑化フィルタを適用して、第1の持続時間と第2の持続時間との間のオーディオ信号の平均利得値の鋭い遷移を低減させる、実施例8の非一時的コンピュータ可読記憶媒体を含む。
[00286]実施例13は、命令が、実行されるとき、1つ又は複数のプロセッサに、オーディオ信号をオーディオ信号のサンプルの周波数表現に変換させる、実施例8の非一時的コンピュータ可読記憶媒体を含む。
[00287]実施例14は、命令が、実行されるとき、1つ又は複数のプロセッサに、フィルタ係数に基づいてオーディオ信号の振幅特性、周波数特性及び位相特性のうちの少なくとも1つを調節させる、実施例8の非一時的コンピュータ可読記憶媒体を含む。
[00288]実施例15は、ニューラルネットワークへの照会を生成することであって、照会が、オーディオ信号のサンプルの表現を含むこと、照会に基づいて、ニューラルネットワークによって決定された複数のオーディオ再生設定にアクセスすること、複数のオーディオ再生設定に基づいて、オーディオ信号に適用するためのフィルタ係数を決定すること、及び第1の持続時間にオーディオ信号にフィルタ係数を適用することを含む方法を含む。
[00289]実施例16は、オーディオ信号のサンプルの表現が、オーディオ信号のサンプルの周波数表現に対応する、実施例15の方法を含む。
[00290]実施例17は、複数のオーディオ再生設定が1つ又は複数のフィルタを含み、1つ又は複数のフィルタのそれぞれが、オーディオ信号のサンプルに関連付けられる、それぞれの利得値、それぞれの周波数値、及びそれぞれの品質係数値のうちの1つ又は複数を含む、実施例15の方法を含む。
[00291]実施例18は、オーディオ信号に適用すべきフィルタ係数に関連付けられるフィルタのタイプに基づいて、オーディオ信号に適用するためのフィルタ係数を決定することをさらに含む、実施例15の方法を含む。
[00292]実施例19は、オーディオ信号に平滑化フィルタを適用して、第1の持続時間と第2の持続時間との間のオーディオ信号の平均利得値の鋭い遷移を低減することをさらに含む、実施例15の方法を含む。
[00293]実施例20は、オーディオ信号をオーディオ信号のサンプルの周波数表現に変換することをさらに含む、実施例15の方法を含む。
[00294]実施例21は、ニューラルネットワークへの照会を生成するための等化(EQ)モデル照会ジェネレータであって、照会が、オーディオ信号のサンプルの表現を含む、EQモデル照会ジェネレータと、照会に基づいて、ニューラルネットワークによって決定された複数のオーディオ再生設定にアクセスし、複数のオーディオ再生設定に基づいて、オーディオ信号に適用するためのフィルタ係数を決定するためのEQフィルタ設定アナライザと、パーソナライズされたEQ設定を生成するためのEQパーソナライゼーションマネージャと、パーソナライズされたEQ設定とフィルタ係数とを混合して、混合等化を生成し、第1の持続時間にオーディオ信号に混合等化を適用するためのEQ調節インプリメンタとを備える装置を含む。
[00295]実施例22は、過去のパーソナライゼーション設定に基づいて、パーソナライズされたEQ設定を生成し、履歴等化が使用可能にされることに応答して、以前の期間に関連付けられるEQ設定に基づいて、パーソナライズされたEQ設定を調節するための履歴EQマネージャをさらに含む、実施例21の装置を含む。
[00296]実施例23は、ユーザのプリファレンスを示すデータの可用性に応答して、ユーザのプリファレンスを示すデータに基づいてEQパラメータを決定することであって、EQパラメータがオーディオ再生設定に対応すること、及びユーザのプリファレンスを示すデータに基づいて決定されたEQパラメータに基づいて、パーソナライズされたEQ設定を調節することを行うためのユーザ入力アナライザをさらに含む、実施例21の装置を含む。
[00297]実施例24は、再生デバイスの位置データの可用性に応答して、再生デバイスの位置データに基づいて、パーソナライズされたEQ設定を調節し、ユーザの識別の可用性に応答して、ユーザに関連付けられるプロファイルに基づいて、パーソナライズされたEQ設定を調節し、オーディオ信号のソースに関連付けられる情報の可用性に応答して、オーディオ信号のソースに基づいて、パーソナライズされたEQ設定を調節するためのデバイスパラメータアナライザをさらに含む、実施例21の装置を含む。
[00298]実施例25は、EQ調節インプリメンタが、第1のパーソナライズされたEQ設定、第2のパーソナライズされたEQ設定及びフィルタ係数に重みを適用して、混合等化を生成するためのものである、実施例21の装置を含む。
[00299]実施例26は、パーソナライズされたEQ設定が、以前の期間に関連付けられるEQ設定、ユーザのプリファレンスを示すデータ、再生デバイスの位置データ、ユーザに関連付けられるプロファイル、又はオーディオ信号のソースのうちの少なくとも1つに基づく、実施例21の装置を含む。
[00300]実施例27は、EQ調節インプリメンタが、オーディオ信号に平滑化フィルタを適用して、第1の持続時間と第2の持続時間との間のオーディオ信号の平均利得値の鋭い遷移を低減する、実施例21の装置を含む。
[00301]実施例28は、実行されるとき、1つ又は複数のプロセッサに、少なくとも、ニューラルネットワークへの照会を生成することであって、照会が、オーディオ信号のサンプルの表現を含むこと、照会に基づいて、ニューラルネットワークによって決定された複数のオーディオ再生設定にアクセスすること、複数のオーディオ再生設定に基づいて、オーディオ信号に適用するためのフィルタ係数を決定すること、パーソナライズされたEQ設定を生成すること、パーソナライズされたEQ設定とフィルタ係数とを混合して、混合等化を生成すること、及び第1の持続時間にオーディオ信号に混合等化を適用することを行わせる命令を含む非一時的コンピュータ可読記憶媒体を含む。
[00302]実施例29は、命令が、実行されるとき、1つ又は複数のプロセッサに、過去のパーソナライゼーション設定に基づいて、パーソナライズされたEQ設定を生成させ、履歴等化が使用可能にされることに応答して、以前の期間に関連付けられるEQ設定に基づいて、パーソナライズされたEQ設定を調節させる、実施例28の非一時的コンピュータ可読記憶媒体を含む。
[00303]実施例30は、命令が、実行されるとき、1つ又は複数のプロセッサに、ユーザのプリファレンスを示すデータの可用性に応答して、ユーザのプリファレンスを示すデータに基づいてEQパラメータを決定することであって、EQパラメータがオーディオ再生設定に対応すること、及びユーザのプリファレンスを示すデータに基づいて決定されたEQパラメータに基づいて、パーソナライズされたEQ設定を調節することを行わせる、実施例28の非一時的コンピュータ可読記憶媒体を含む。
[00304]実施例31は、命令が、実行されるとき、1つ又は複数のプロセッサに、再生デバイスの位置データの可用性に応答して、再生デバイスの位置データに基づいて、パーソナライズされたEQ設定を調節させ、ユーザの識別の可用性に応答して、ユーザに関連付けられるプロファイルに基づいて、パーソナライズされたEQ設定を調節させ、オーディオ信号のソースに関連付けられる情報の可用性に応答して、オーディオ信号のソースに基づいて、パーソナライズされたEQ設定を調節させる、実施例28の非一時的コンピュータ可読記憶媒体を含む。
[00305]実施例32は、命令が、実行されるとき、1つ又は複数のプロセッサに、第1のパーソナライズされたEQ設定、第2のパーソナライズされたEQ設定及びフィルタ係数に重みを適用して、混合等化を生成させる、実施例28の非一時的コンピュータ可読記憶媒体を含む。
[00306]実施例33は、パーソナライズされたEQ設定が、以前の期間に関連付けられるEQ設定、ユーザのプリファレンスを示すデータ、再生デバイスの位置データ、ユーザに関連付けられるプロファイル、又はオーディオ信号のソースのうちの少なくとも1つに基づく、実施例28の非一時的コンピュータ可読記憶媒体を含む。
[00307]実施例34は、命令が、実行されるとき、1つ又は複数のプロセッサに、オーディオ信号に平滑化フィルタを適用して、第1の持続時間と第2の持続時間との間のオーディオ信号の平均利得値の鋭い遷移を低減させる、実施例28の非一時的コンピュータ可読記憶媒体を含む。
[00308]実施例35は、ニューラルネットワークへの照会を生成することであって、照会が、オーディオ信号のサンプルの表現を含むこと、照会に基づいて、ニューラルネットワークによって決定された複数のオーディオ再生設定にアクセスすること、複数のオーディオ再生設定に基づいて、オーディオ信号に適用するためのフィルタ係数を決定すること、パーソナライズされたEQ設定を生成すること、パーソナライズされたEQ設定とフィルタ係数とを混合して、混合等化を生成すること、及び第1の持続時間にオーディオ信号に混合等化を適用することを含む方法を含む。
[00309]実施例36は、過去のパーソナライゼーション設定に基づいて、パーソナライズされたEQ設定を生成すること、及び履歴等化が使用可能にされることに応答して、以前の期間に関連付けられるEQ設定に基づいて、パーソナライズされたEQ設定を調節することをさらに含む、実施例35の方法を含む。
[00310]実施例37は、ユーザのプリファレンスを示すデータの可用性に応答して、ユーザのプリファレンスを示すデータに基づいてEQパラメータを決定することであって、EQパラメータがオーディオ再生設定に対応すること、及びユーザのプリファレンスを示すデータに基づいて決定されたEQパラメータに基づいて、パーソナライズされたEQ設定を調節することをさらに含む、実施例35の方法を含む。
[00311]実施例38は、再生デバイスの位置データの可用性に応答して、再生デバイスの位置データに基づいて、パーソナライズされたEQ設定を調節すること、ユーザの識別の可用性に応答して、ユーザに関連付けられるプロファイルに基づいて、パーソナライズされたEQ設定を調節すること、及びオーディオ信号のソースに関連付けられる情報の可用性に応答して、オーディオ信号のソースに基づいて、パーソナライズされたEQ設定を調節することをさらに含む、実施例35の方法を含む。
[00312]実施例39は、第1のパーソナライズされたEQ設定、第2のパーソナライズされたEQ設定及びフィルタ係数に重みを適用して、混合等化を生成することをさらに含む、実施例35の方法を含む。
[00313]実施例40は、パーソナライズされたEQ設定が、以前の期間に関連付けられるEQ設定、ユーザのプリファレンスを示すデータ、再生デバイスの位置データ、ユーザに関連付けられるプロファイル、又はオーディオ信号のソースのうちの少なくとも1つに基づく、実施例35の方法を含む。
[00314]実施例41は、再生デバイス上で再生すべきメディア信号を受信したことに応答して、メディア信号に対応する等化(EQ)プロファイルにアクセスするためのシンクロナイザと、パーソナライズされたEQ設定を生成するためのEQパーソナライゼーションマネージャと、EQプロファイル及びパーソナライズされたEQ設定に基づいて生成された混合等化に基づいて、再生デバイス上のメディア信号の再生を修正するためのEQ調節インプリメンタとを備える装置を含む。
[00315]実施例42は、過去のパーソナライゼーション設定に基づいて、パーソナライズされたEQ設定を生成し、履歴等化が使用可能にされることに応答して、以前の期間に関連付けられるEQ設定に基づいて、パーソナライズされたEQ設定を調節するための履歴EQマネージャをさらに含む、実施例41の装置を含む。
[00316]実施例43は、ユーザのプリファレンスを示すデータの可用性に応答して、ユーザのプリファレンスを示すデータに基づいてEQパラメータを決定することであって、EQパラメータがオーディオ再生設定に対応すること、及びユーザのプリファレンスを示すデータに基づいて決定されたEQパラメータに基づいて、パーソナライズされたEQ設定を調節することを行うためのユーザ入力アナライザをさらに含む、実施例41の装置を含む。
[00317]実施例44は、再生デバイスの位置データの可用性に応答して、再生デバイスの位置データに基づいて、パーソナライズされたEQ設定を調節し、ユーザの識別の可用性に応答して、ユーザプロファイルに基づいて、パーソナライズされたEQ設定を調節し、メディア信号のソースに関連付けられる情報の可用性に応答して、メディア信号のソースに基づいて、パーソナライズされたEQ設定を調節するためのデバイスパラメータアナライザをさらに含む、実施例41の装置を含む。
[00318]実施例45は、EQ調節インプリメンタが、第1のパーソナライズされたEQ設定、第2のパーソナライズされたEQ設定及びEQプロファイルに重みを適用して、混合等化を生成するためのものである、実施例41の装置を含む。
[00319]実施例46は、パーソナライズされたEQ設定が、以前の期間に関連付けられるEQ設定、ユーザのプリファレンスを示すデータ、再生デバイスの位置データ、ユーザプロファイル、又はメディア信号のソースのうちの少なくとも1つに基づく、実施例41の装置を含む。
[00320]実施例47は、EQプロファイルが、(1)歌に関連付けられるカテゴリを特定する情報、(2)ビデオセグメントに関連付けられるカテゴリを特定する情報、(3)歌又はビデオセグメントに関連付けられるムードを特定する情報、又は(4)メディア信号の一部と共に様々な周波数についての信号強度パラメータを特定する情報のうちの少なくとも1つに対応する再生属性を含む、実施例41の装置を含む。
[00321]実施例48は、実行されるとき、1つ又は複数のプロセッサに、少なくとも、再生デバイス上で再生すべきメディア信号を受信したことに応答して、メディア信号に対応する等化(EQ)プロファイルにアクセスさせ、パーソナライズされたEQ設定を生成させ、EQプロファイル及びパーソナライズされたEQ設定に基づいて生成された混合等化に基づいて、再生デバイス上のメディア信号の再生を修正させる命令を含む非一時的コンピュータ可読記憶媒体を含む。
[00322]実施例49は、命令が、実行されるとき、1つ又は複数のプロセッサに、過去のパーソナライゼーション設定に基づいて、パーソナライズされたEQ設定を生成させ、履歴等化が使用可能にされることに応答して、以前の期間に関連付けられるEQ設定に基づいて、パーソナライズされたEQ設定を調節させる、実施例48の非一時的コンピュータ可読記憶媒体を含む。
[00323]実施例50は、命令が、実行されるとき、1つ又は複数のプロセッサに、ユーザのプリファレンスを示すデータの可用性に応答して、ユーザのプリファレンスを示すデータに基づいてEQパラメータを決定することであって、EQパラメータがオーディオ再生設定に対応すること、及びユーザのプリファレンスを示すデータに基づいて決定されたEQパラメータに基づいて、パーソナライズされたEQ設定を調節することを行わせる、実施例48の非一時的コンピュータ可読記憶媒体を含む。
[00324]実施例51は、命令が、実行されるとき、1つ又は複数のプロセッサに、再生デバイスの位置データの可用性に応答して、再生デバイスの位置データに基づいて、パーソナライズされたEQ設定を調節させ、ユーザの識別の可用性に応答して、ユーザプロファイルに基づいて、パーソナライズされたEQ設定を調節させ、メディア信号のソースに関連付けられる情報の可用性に応答して、メディア信号のソースに基づいて、パーソナライズされたEQ設定を調節させる、実施例48の非一時的コンピュータ可読記憶媒体を含む。
[00325]実施例52は、命令が、実行されるとき、1つ又は複数のプロセッサに、第1のパーソナライズされたEQ設定、第2のパーソナライズされたEQ設定及びEQプロファイルに重みを適用して、混合等化を生成させる、実施例48の非一時的コンピュータ可読記憶媒体を含む。
[00326]実施例53は、パーソナライズされたEQ設定が、以前の期間に関連付けられるEQ設定、ユーザのプリファレンスを示すデータ、再生デバイスの位置データ、ユーザプロファイル、又はメディア信号のソースのうちの少なくとも1つに基づく、実施例48の非一時的コンピュータ可読記憶媒体を含む。
[00327]実施例54は、EQプロファイルが、(1)歌に関連付けられるカテゴリを特定する情報、(2)ビデオセグメントに関連付けられるカテゴリを特定する情報、(3)歌又はビデオセグメントに関連付けられるムードを特定する情報、又は(4)メディア信号の一部と共に様々な周波数についての信号強度パラメータを特定する情報のうちの少なくとも1つに対応する再生属性を含む、実施例48の非一時的コンピュータ可読記憶媒体を含む。
[00328]実施例55は、再生デバイス上で再生すべきメディア信号を受信したことに応答して、メディア信号に対応する等化(EQ)プロファイルにアクセスすること、パーソナライズされたEQ設定を生成すること、並びにEQプロファイル及びパーソナライズされたEQ設定に基づいて生成された混合等化に基づいて、再生デバイス上のメディア信号の再生を修正することを含む方法を含む。
[00329]実施例56は、過去のパーソナライゼーション設定に基づいて、パーソナライズされたEQ設定を生成すること、及び履歴等化が使用可能にされることに応答して、以前の期間に関連付けられるEQ設定に基づいて、パーソナライズされたEQ設定を調節することをさらに含む、実施例55の方法を含む。
[00330]実施例57は、ユーザのプリファレンスを示すデータの可用性に応答して、ユーザのプリファレンスを示すデータに基づいてEQパラメータを決定することであって、EQパラメータがオーディオ再生設定に対応すること、及びユーザのプリファレンスを示すデータに基づいて決定されたEQパラメータに基づいて、パーソナライズされたEQ設定を調節することをさらに含む、実施例55の方法を含む。
[00331]実施例58は、再生デバイスの位置データの可用性に応答して、再生デバイスの位置データに基づいて、パーソナライズされたEQ設定を調節すること、ユーザの識別の可用性に応答して、ユーザプロファイルに基づいて、パーソナライズされたEQ設定を調節すること、及びメディア信号のソースに関連付けられる情報の可用性に応答して、メディア信号のソースに基づいて、パーソナライズされたEQ設定を調節することをさらに含む、実施例55の方法を含む。
[00332]実施例59は、第1のパーソナライズされたEQ設定、第2のパーソナライズされたEQ設定及びEQプロファイルに重みを適用して、混合等化を生成することをさらに含む、実施例55の方法を含む。
[00333]実施例60は、パーソナライズされたEQ設定が、以前の期間に関連付けられるEQ設定、ユーザのプリファレンスを示すデータ、再生デバイスの位置データ、ユーザプロファイル、又はメディア信号のソースのうちの少なくとも1つに基づく、実施例55の方法を含む。
[00334]実施例61は、オーディオ信号に複数の等化調節を適用して、等化後オーディオ信号を生成するための音量調節器であって、複数の等化調節が、オーディオ信号の平均音量表現を含む入力特徴セットに応答してニューラルネットワークから出力される、音量調節器と、複数の等化調節の適用後に、オーディオ信号の周波数表現の不規則性を検出することであって、不規則性が、しきい値を超える、隣り合う周波数値間の音量の変化に対応すること、及び隣り合う周波数値の第1の周波数値での音量を調節して、不規則性を低減することを行うためのしきい値処理コントローラと、不規則性が低減されたとき、オーディオ信号に適用するための等化(EQ)曲線を生成するEQ曲線ジェネレータと、EQ曲線に基づいて、時間領域で等化後オーディオ信号を出力するための周波数-時間領域コンバータとを備える装置を含む。
[00335]実施例62は、複数の等化調節の適用前に、オーディオ信号の周波数表現の第1の平方自乗平均(RMS)値を決定し、不規則性の低減後に、オーディオ信号の周波数表現の第2のRMS値を決定し、第2のRMS値と第1のRMS値との間の比を決定するためのエネルギー計算器をさらに含む、実施例61の装置。
[00336]実施例63は、(1)不規則性の低減後の、オーディオ信号の周波数表現の第1のRMS値と、(2)複数の等化調節の適用前の、オーディオ信号の周波数表現の第2のRMS値との間の比が、オーディオ信号の許容できるエネルギーの変化に関連付けられるしきい値を超えているかどうかを判定し、比がしきい値を超えていることに応答して、オーディオ信号の周波数表現の利得の正規化を適用するための音量ノーマライザをさらに含む、実施例61の装置を含む。
[00337]実施例64は、複数の等化調節が、複数の周波数範囲に対応する複数の音量調節値を含む、実施例61の装置を含む。
[00338]実施例65は、しきい値処理コントローラが、オーディオ信号の周波数表現で複数の周波数値を選択し、複数の周波数値に関連付けられる複数の音量値を決定し、複数の周波数値にわたって音量の2次導関数を決定し、2次導関数の絶対値がしきい値を超えることに応答して、隣り合う周波数値の第1の周波数値での音量を調節して、不規則性を低減するためのものである、実施例61の装置を含む。
[00339]実施例66は、複数の等化調節が、少なくとも、基準オーディオ信号と、EQ曲線と、EQ曲線を生成した複数のオーディオエンジニアに関連付けられるタグとに基づき、ニューラルネットワークが、少なくとも、基準オーディオ信号と、EQ曲線と、複数のオーディオエンジニアに関連付けられるタグとに関連付けられる推論に基づいて、複数の等化調節を決定する、実施例61の装置を含む。
[00340]実施例67は、入力特徴セットが、オーディオ信号の平均音量表現と、オーディオ信号の周波数表現の周波数ビンについての平均標準偏差測定値とを含む、実施例66の装置を含む。
[00341]実施例68は、実行されるとき、1つ又は複数のプロセッサに、少なくとも、オーディオ信号に複数の等化調節を適用して、等化後オーディオ信号を生成することであって、複数の等化調節が、オーディオ信号の平均音量表現を含む入力特徴セットに応答してニューラルネットワークから出力されること、複数の等化調節の適用後に、オーディオ信号の周波数表現の不規則性を検出することであって、不規則性が、しきい値を超える、隣り合う周波数値間の音量の変化に対応すること、隣り合う周波数値の第1の周波数値での音量を調節して、不規則性を低減すること、不規則性が低減されたとき、オーディオ信号に適用するための等化(EQ)曲線を生成すること、及びEQ曲線に基づいて、時間領域で等化後オーディオ信号を出力することを行わせる命令を含む非一時的コンピュータ可読記憶媒体を含む。
[00342]実施例69は、命令が、実行されるとき、1つ又は複数のプロセッサに、複数の等化調節の適用前に、オーディオ信号の周波数表現の第1の平方自乗平均(RMS)値を決定させ、不規則性の低減後に、オーディオ信号の周波数表現の第2のRMS値を決定させ、第2のRMS値と第1のRMS値との間の比を決定させる、実施例68の非一時的コンピュータ可読記憶媒体を含む。
[00343]実施例70は、命令が、実行されるとき、1つ又は複数のプロセッサに、(1)不規則性の低減後の、オーディオ信号の周波数表現の第1のRMS値と、(2)複数の等化調節の適用前の、オーディオ信号の周波数表現の第2のRMS値との間の比が、オーディオ信号の許容できるエネルギーの変化に関連付けられるしきい値を超えているかどうかを判定させ、比がしきい値を超えていることに応答して、オーディオ信号の周波数表現の利得の正規化を適用させる、実施例68の非一時的コンピュータ可読記憶媒体を含む。
[00344]実施例71は、複数の等化調節が、複数の周波数範囲に対応する複数の音量調節値を含む、実施例68の非一時的コンピュータ可読記憶媒体を含む。
[00345]実施例72は、命令が、実行されるとき、1つ又は複数のプロセッサに、オーディオ信号の周波数表現で複数の周波数値を選択させ、複数の周波数値に関連付けられる複数の音量値を決定させ、複数の周波数値にわたって音量の2次導関数を決定させ、2次導関数の絶対値がしきい値を超えることに応答して、隣り合う周波数値の第1の周波数値での音量を調節して、不規則性を低減させる、実施例68の非一時的コンピュータ可読記憶媒体を含む。
[00346]実施例73は、複数の等化調節が、少なくとも、基準オーディオ信号と、EQ曲線と、EQ曲線を生成した複数のオーディオエンジニアに関連付けられるタグとに基づき、ニューラルネットワークが、少なくとも、基準オーディオ信号と、EQ曲線と、複数のオーディオエンジニアに関連付けられるタグとに関連付けられる推論に基づいて、複数の等化調節を決定する、実施例68の非一時的コンピュータ可読記憶媒体を含む。
[00347]実施例74は、入力特徴セットが、オーディオ信号の平均音量表現と、オーディオ信号の周波数表現の周波数ビンについての平均標準偏差測定値とを含む、実施例73の非一時的コンピュータ可読記憶媒体を含む。
[00348]実施例75は、オーディオ信号に複数の等化調節を適用して、等化後オーディオ信号を生成することであって、複数の等化調節が、オーディオ信号の平均音量表現を含む入力特徴セットに応答してニューラルネットワークから出力されること、複数の等化調節の適用後に、オーディオ信号の周波数表現の不規則を性検出することであって、不規則性が、しきい値を超える、隣り合う周波数値間の音量の変化に対応すること、隣り合う周波数値の第1の周波数値での音量を調節して、不規則性を低減すること、不規則性が低減されたとき、オーディオ信号に適用するための等化(EQ)曲線を生成すること、及びEQ曲線に基づいて、時間領域で等化後オーディオ信号を出力することを含む方法を含む。
[00349]実施例76は、複数の等化調節の適用前に、オーディオ信号の周波数表現の第1の平方自乗平均(RMS)値を決定すること、不規則性の低減後に、オーディオ信号の周波数表現の第2のRMS値を決定すること、及び第2のRMS値と第1のRMS値との間の比を決定することをさらに含む、実施例75の方法を含む。
[00350]実施例77は、(1)不規則性の低減後の、オーディオ信号の周波数表現の第1のRMS値と、(2)複数の等化調節の適用前の、オーディオ信号の周波数表現の第2のRMS値との間の比が、オーディオ信号の許容できるエネルギーの変化に関連付けられるしきい値を超えているかどうかを判定すること、及び比がしきい値を超えていることに応答して、オーディオ信号の周波数表現の利得の正規化を適用することをさらに含む、実施例75の方法を含む。
[00351]実施例78は、複数の等化調節が、複数の周波数範囲に対応する複数の音量調節値を含む、実施例75の方法を含む。
[00352]実施例79は、オーディオ信号の周波数表現で複数の周波数値を選択すること、複数の周波数値に関連付けられる複数の音量値を決定すること、複数の周波数値にわたって音量の2次導関数を決定すること、及び2次導関数の絶対値がしきい値を超えることに応答して、隣り合う周波数値の第1の周波数値での音量を調節して、不規則性を低減することをさらに含む、実施例75の方法を含む。
[00353]実施例80は、複数の等化調節が、少なくとも、基準オーディオ信号と、EQ曲線と、EQ曲線を生成した複数のオーディオエンジニアに関連付けられるタグとに基づき、ニューラルネットワークが、少なくとも、基準オーディオ信号と、EQ曲線と、複数のオーディオエンジニアに関連付けられるタグとに関連付けられる推論に基づいて、複数の等化調節を決定する、実施例75の方法を含む。
[00354]いくつかの例示的方法、装置及び製造品が本明細書で開示されたが、本特許の保護の範囲はそれに限定されない。そうではなく、本特許は、明確に本特許の特許請求の範囲内に含まれるすべての方法、装置及び製造品を包含する。