【文献】
Emmanuel Ravelli etc.,Audio Signal Representations for Indexing in the Transform Domain,IEEE TRANSACTIONS ON AUDIO,SPEECH,AND LANGUAGE PROCESSING,米国,IEEE,2010年 3月,Vol.18,PP.434−446
【文献】
Gerald Schuller etc.,Fast Audio Feature Extraction From Compressed Audio Data,IEEE JOURNAL OF SELECTED TOPICS IN SIGNAL PROCESSING,米国,IEEE,2011年10月,Vol.5,PP.1262−1271
(58)【調査した分野】(Int.Cl.,DB名)
前記スペクトル帯域複製ベースのオーディオ・エンコーダが:高効率先進オーディオ符号化、mp3PROおよびMPEG-D USACのいずれか一つを適用する、請求項1記載の方法。
・前記オーディオ信号のサンプルのブロックのシーケンスからクロマ・ベクトルのシーケンスを決定し、それにより前記オーディオ信号のクロマグラムを与える段階をさらに含む、請求項1ないし6のうちいずれか一項記載の方法。
・前記コア・エンコーダおよび前記スペクトル帯域複製エンコーダによって与えられるデータから、エンコードされたビットストリームを生成するよう適応されたマルチプレクサをさらに有しており、前記マルチプレクサは、前記クロマ・ベクトルから導出された情報を、メタデータとして、エンコードされたビットストリームに加えるよう適応されている、請求項9記載のエンコーダ。
前記エンコードされたビットストリームは、MP4フォーマット、3GPフォーマット、3G2フォーマット、LATMフォーマットのうちのいずれか一つでエンコードされる、請求項10記載のエンコーダ。
【発明の概要】
【発明が解決しようとする課題】
【0005】
本稿は、クロマグラム計算方法の複雑さの問題に取り組むものであり、低減した計算量でのクロマグラム計算のための方法およびシステムを記述する。
【課題を解決するための手段】
【0006】
ある側面によれば、オーディオ信号のサンプルのブロックについてクロマ・ベクトルを決定する方法が記述される。サンプルのブロックは、いわゆるサンプルの長ブロックであってもよい。これはサンプルのフレームとも称される。オーディオ信号はたとえば音楽トラックであってもよい。本方法は、オーディオ・エンコーダ(たとえばAAC(Advanced Audio Coding[先進オーディオ符号化])またはmp3エンコーダ)からオーディオ信号のサンプルのブロックから導出された周波数係数の対応するブロックを受領する段階を含む。オーディオ・エンコーダは、スペクトル帯域複製(SBR: spectral band replication)ベースのオーディオ・エンコーダのコア・エンコーダであってもよい。例として、SBRベースのオーディオ・エンコーダのコア・エンコーダはAACまたはmp3エンコーダであってもよく、より詳細には、SBRベースのオーディオ・エンコーダはHE(High Efficiency[高効率])AACエンコーダまたはmp3PROであってもよい。本稿に記載される方法が適用可能なSBRベースのオーディオ・エンコーダのさらなる例はMPEG-D USAC(Universal Speech and Audio Codec[統合音声音響符号化])エンコーダである。
【0007】
(SBRベースの)オーディオ・エンコーダは典型的には、周波数係数のブロックからオーディオ信号のエンコードされたビットストリームを生成するよう適応されている。この目的のため、オーディオ・エンコーダは周波数係数のブロックを量子化してもよく、周波数係数の量子化されたブロックをエントロピー符号化してもよい。
【0008】
本方法はさらに、周波数係数の受領されたブロックに基づいてオーディオ信号のサンプルのブロックについてのクロマ・ベクトルを決定する段階を含む。詳細には、クロマ・ベクトルは、周波数係数の受領されたブロックから導出される周波数係数の第二のブロックから決定されてもよい。ある実施形態では、周波数係数の第二のブロックは周波数係数の上記の受領されたブロックである。これは、周波数係数の受領されたブロックが周波数係数の長ブロックである場合に成り立ちうる。もう一つの実施形態では、周波数係数の第二のブロックは周波数係数の推定された長ブロックに対応する。この周波数係数の推定された長ブロックは、周波数係数の受領されたブロック内に含まれる複数の短ブロックから決定されてもよい。
【0009】
前記ブロックの周波数係数は、修正離散コサイン変換(MDCT: Modified Discrete Cosine Transformation)係数のブロックであってもよい。時間領域から周波数領域への変換(および結果として得られる周波数係数のブロック)の他の例は、MDST(Modified Discrete Sine Transform[修正離散サイン変換])、DFT(Discrete Fourier Transform[離散フーリエ変換])およびMCLT(Modified Complex Lapped Transform[修正複素重複変換])といった変換である。一般的な表現では、周波数係数のブロックは、時間領域から周波数領域への変換を使って対応するサンプルのブロックから決定されてもよい。逆に、サンプルのブロックが、対応する逆変換を使って周波数係数のブロックから決定されてもよい。
【0010】
MDCTは重複変換である。つまり、そのような場合、周波数係数のブロックはサンプルのブロックおよび該サンプルのブロックのすぐ近傍からのオーディオ信号の追加的なさらなるサンプルから決定される。詳細には、周波数係数のブロックは、サンプルのブロックおよび直前のサンプルのブロックから決定されてもよい。
【0011】
サンプルのブロックはそれぞれM個のサンプルからなるN個の相続く短ブロックを含んでいてもよい。換言すれば、サンプルのブロックはN個の短ブロックのシーケンスであってもよい(あるいはN個の短ブロックのシーケンスを含んでいてもよい)。同様に、周波数係数のブロックはそれぞれM個の周波数係数からなるN個の対応する短ブロックを含んでいてもよい。ある実施形態ではM=129、N=8であり、つまりサンプルのブロックはM×N=1024個のサンプルを含む。オーディオ・エンコーダは過渡オーディオ信号をエンコードするために短ブロックを利用し、それにより周波数分解能を低下させつつも時間分解能を上げてもよい。
【0012】
オーディオ・エンコーダからの短ブロックのシーケンスを受領すると、本方法は、周波数係数の短ブロックの受領されたシーケンスの周波数分解能を上げ、それによりサンプルのブロック全体(これはサンプルの短ブロックからなる前記シーケンスを含む)についてのクロマ・ベクトルの決定を可能にする追加的なステップを含んでいてもよい。詳細には、本方法は、M個の周波数係数のN個の短ブロックからのサンプルのブロックに対応する周波数係数の長ブロックを推定することを含んでいてもよい。この推定は、周波数係数の推定される長ブロックが周波数係数のN個の短ブロックに比べ増大した周波数分解能をもつように行なわれる。そのような場合、オーディオ信号のサンプルのブロックについてのクロマ・ベクトルは、周波数係数の推定された長ブロックに基づいて決定されてもよい。
【0013】
周波数係数の長ブロックを推定する前記段階は、種々のレベルの総合のために階層的な仕方で実行されてもよい。つまり、複数の短ブロックが長ブロックに総合されてもよく、複数の長ブロックが超長ブロックに総合されてもよい、といったことである。結果として、種々のレベルの周波数分解能(および対応して時間分解能)が提供できる。例として、周波数係数の長ブロックはN個の短ブロックのシーケンスから決定されてもよい(上記と同様)。次の階層レベルでは、周波数係数のN2個の長ブロック(このうち一部または全部がN個の短ブロックの対応する諸シーケンスから推定されたものでありうる)のシーケンスがN2倍多い周波数係数(そして対応して高い周波数分解能)の超長ブロックに変換されてもよい。よって、周波数係数の短ブロックのシーケンスから周波数係数の長ブロックを推定する方法は、(同時にクロマ・ベクトルの時間分解能を階層的に減少させつつ)クロマ・ベクトルの周波数分解能を階層的に増大させるために使用されてもよい。
【0014】
周波数係数の長ブロックを推定する段階は、周波数係数のN個の短ブロックの対応する周波数係数をインターリーブし、それにより周波数係数のインターリーブされた長ブロックを与えることを含んでいてもよい。周波数係数のブロックの量子化およびエントロピー符号化のコンテキストでは、そのようなインターリーブはオーディオ・エンコーダ(たとえばコア・エンコーダ)によって実行されてもよいことを注意しておくべきである。よって、本方法は、代替的に、オーディオ・エンコーダから周波数係数のインターリーブされた長ブロックを受領する段階を含んでいてもよい。結果として、インターリーブ段階によって追加的な計算資源が消費されることはない。クロマ・ベクトルは、周波数係数のインターリーブされた長ブロックから決定されてもよい。さらに、周波数係数の長ブロックを推定する段階は、(高周波数ビンに比べ変換の低周波数ビンにおける)エネルギー圧縮属性をもつ変換、たとえばDCT-II変換を周波数係数のインターリーブされた長ブロックに適用することによって、周波数係数のN個の短ブロックのN個の対応する周波数係数を脱相関することを含んでいてもよい。エネルギー圧縮変換、たとえばDCT-II変換を使ったこの脱相関方式は、適応ハイブリッド変換(AHT: Adaptive Hybrid Transform)方式と称されてもよい。クロマ・ベクトルは、周波数係数の脱相関されたインターリーブされた長ブロックから決定されてもよい。
【0015】
あるいはまた、周波数係数の長ブロックを推定する段階は、M個の周波数係数のN個の短ブロックにポリフェーズ変換(PPC: polyphase conversion)を適用することを含んでいてもよい。ポリフェーズ変換は、M個の周波数係数のN個の短ブロックをN×M個の周波数係数の正確な長ブロックに数学的に変換するための変換行列に基づいていてもよい。よって、変換行列は、オーディオ・エンコーダ(たとえばMDCT)によって実行される時間領域から周波数領域への変換から数学的に決定されてもよい。変換行列は、周波数係数のN個の短ブロックの時間領域への逆変換と、時間領域サンプルの周波数領域へのその後の変換の組み合わせを表わしていて、それによりN×M個の周波数係数の正確な長ブロックを与えるのでもよい。ポリフェーズ変換は、変換行列係数の一部を0と置いた上記変換行列の近似を利用してもよい。例として、変換行列係数の90%以上の割合が0と置かれてもよい。結果として、ポリフェーズ変換は低い計算量で周波数係数の推定される長ブロックを提供しうる。さらに、上記割合は、複雑さの関数として変換の品質を変えるためのパラメータとして使われてもよい。換言すれば、上記割合は複雑さがスケーラブルな変換を提供するために使われてもよい。
【0016】
AHTが(PPCも)短ブロックの上記シーケンスの一つまたは複数の部分集合に適用されてもよいことを注意しておくべきである。よって、周波数係数の長ブロックを推定することは、周波数係数の上記N個の短ブロックの複数の部分集合を形成することを含んでいてもよい。それらの部分集合は、L個の短ブロックの長さを有していて、それによりN/L個の部分集合を与えてもよい。部分集合当たりの短ブロックの数Lは、オーディオ信号に基づいて選択されてもよく、それによりAHT/PPCをそのオーディオ信号(すなわち、オーディオ信号のその特定のフレーム)の特定の特性に適応させてもよい。
【0017】
AHTの場合、各部分集合について、周波数係数の短ブロックの対応する周波数係数がインターリーブされ、それによりその部分集合についての(L×M個の係数をもつ)周波数係数のインターリーブされた中間ブロックを与えてもよい。さらに、各部分集合について、エネルギー圧縮変換、たとえばDCT-II変換が、その部分集合の周波数係数のインターリーブされた中間ブロックに適用され、それにより周波数係数のインターリーブされた中間ブロックの周波数分解能を上げてもよい。PPCの場合、M個の周波数係数のL個の短ブロックをL×M個の周波数係数の正確な中間ブロックに数学的に変換するための中間変換行列が決定されてもよい。各部分集合について、ポリフェーズ変換(これは中間ポリフェーズ変換と称されてもよい)は、中間変換行列係数の一部を0と置いた中間変換行列の近似を利用してもよい。
【0018】
より一般には、周波数係数の長ブロックの推定は、(前記複数の部分集合についての)短ブロックのシーケンスから周波数係数の複数の中間ブロックの推定を含んでいてもよいと言ってもよい。周波数係数の前記複数の中間ブロックから(本稿に記載される方法を使って)複数のクロマ・ベクトルが決定されてもよい。よって、クロマ・ベクトルの決定についての周波数分解能(および時間分解能)はオーディオ信号の特性に適応させることができる。
【0019】
クロマ・ベクトルを決定する段階は、周波数係数の受領されたブロックから導出される周波数係数の第二のブロックに対して周波数依存の音響心理学的処理を適用することを含んでいてもよい。周波数依存の音響心理学的処理はオーディオ・エンコーダによって提供される音響心理学的モデルを利用してもよい。
【0020】
ある実施形態では、周波数依存の音響心理学的処理を適用することは、周波数係数の第二のブロックの少なくとも一つの周波数係数から導出された値を、周波数依存のエネルギー閾値(たとえば、周波数依存の音響心理学的なマスキング閾値)と比較することを含む。前記少なくとも一つの周波数係数から導出された値は、対応する複数の周波数(たとえばスケール因子帯域)についての複数の周波数係数から導出された平均エネルギー値(たとえばスケール因子帯域エネルギー)に対応していてもよい。詳細には、平均エネルギー値は、前記複数の周波数係数の平均であってもよい。上記比較の結果として、周波数係数は、該周波数係数がエネルギー閾値より低ければ、0と置かれてもよい。エネルギー閾値は、オーディオ・エンコーダによって、たとえばSBRベースのオーディオ・エンコーダのコア・エンコーダによって適用される音響心理学的モデルから導出されてもよい。詳細には、エネルギー閾値は、周波数係数のブロックを量子化するためにオーディオ・エンコーダによって使用される周波数依存のマスキング閾値から導出されてもよい。
【0021】
クロマ・ベクトルを決定する段階は、前記第二のブロックの周波数係数の一部または全部をクロマ・ベクトルの諸音程クラス〔トーン・クラス〕に分類することを含んでいてもよい。その後、クロマ・ベクトルの諸音程クラスについての累積されたエネルギーが、分類された周波数係数に基づいて決定されてもよい。例として、周波数係数は、クロマ・ベクトルの諸音程クラスに関連付けられた諸帯域通過フィルタを使って分類されてもよい。
【0022】
オーディオ信号(サンプルのブロックのシーケンスを含む)のクロマグラムは、オーディオ信号のサンプルのブロックのシーケンスからクロマ・ベクトルのシーケンスを決定し、クロマ・ベクトルの該シーケンスをサンプルのブロックのシーケンスに関連する時間軸に対してプロットすることによって決定されてもよい。換言すれば、サンプルのブロックのシーケンスについて(すなわち、一連のフレームについて)本稿で概説される方法を逐次反復することによって、信頼できるクロマ・ベクトルが、どのフレームも無視することなく(たとえば、短ブロックのシーケンスを含む過渡オーディオ信号についてのフレームを無視することなく)、フレーム毎に決定されうる。結果として、連続的なクロマグラム(フレーム毎に(少なくとも)一つのクロマ・ベクトルを含む)が決定されてもよい。
【0023】
もう一つの側面によれば、オーディオ信号をエンコードするよう適応されたオーディオ・エンコーダが記載される。オーディオ・エンコーダは、オーディオ信号の(可能性としてはダウンサンプリングされた)低周波数成分をエンコードするよう適応されたコア・エンコーダを有していてもよい。コア・エンコーダは典型的には、サンプルのブロックを周波数領域に変換してそれにより周波数係数の対応するブロックを与えることによって、低周波数成分のサンプルのブロックをエンコードするよう適応されている。さらに、オーディオ・エンコーダは、周波数係数のブロックに基づいてオーディオ信号の低周波数成分のサンプルのブロックのクロマ・ベクトルを決定するよう適応されたクロマ決定ユニットを有していてもよい。この目的のために、クロマ決定ユニットは、本稿で概説される方法段階の任意のものを実行するよう適応されていてもよい。エンコーダはさらに、オーディオ信号の対応する高周波数成分をエンコードするよう適応されたスペクトル帯域複製エンコーダを有していてもよい。さらに、エンコーダは、前記コア・エンコーダおよび前記スペクトル帯域複製エンコーダによって与えられるデータからエンコードされたビットストリームを生成するよう適応されたマルチプレクサを有していてもよい。さらに、前記マルチプレクサは、クロマ・ベクトルから導出された情報(たとえばコードおよび/またはキーといったクロマ・ベクトルから導出される高レベルの情報)を、メタデータとして、エンコードされたビットストリームに加えるよう適応されていてもよい。例として、エンコードされたビットストリームは、MP4フォーマット、3GPフォーマット、3G2フォーマット、LATMフォーマットの任意のものにおいてエンコードされてもよい。
【0024】
本稿に記載される方法はオーディオ・デコーダ(たとえばSBRベースのオーディオ・エンコーダ)に適用されてもよいことを注意しておくべきである。そのようなオーディオ・デコーダは典型的には、エンコードされたビットストリームを受領するよう適応されており、エンコードされたビットストリームから周波数係数の(量子化された)ブロックを抽出するよう適応されている多重分離およびデコード・ユニットを有する。周波数係数のこれらのブロックは、本稿で概説されているようにクロマ・ベクトルを決定するために使われてもよい。
【0025】
結果として、オーディオ信号をデコードするよう適応されたオーディオ・デコーダが記述される。オーディオ・デコーダは、ビットストリームを受領するよう適応されており、受領されたビットストリームから周波数係数のブロックを抽出するよう適応された多重分離およびデコード・ユニットを有する。周波数係数のブロックは、オーディオ信号の(ダウンサンプリングされた)低周波数成分のサンプルの対応するブロックに関連付けられている。詳細には、周波数係数のブロックは、対応するオーディオ・エンコーダにおいて導出された周波数係数の対応するブロックの量子化されたバージョンに対応してもよい。デコーダにおける周波数係数のブロックは、(逆変換を使って)時間領域に変換されて、オーディオ信号の(ダウンサンプリングされた)低周波数成分のサンプルの再構成されたブロックを生じてもよい。
【0026】
さらに、オーディオ・デコーダは、ビットストリームから抽出された周波数係数のブロックに基づいてオーディオ信号の(低周波数成分の)サンプルのブロックのクロマ・ベクトルを決定するよう適応されたクロマ決定ユニットを有する。クロマ決定ユニットは、本稿で概説される方法段階の任意のものを実行するよう適応されていてもよい。
【0027】
さらに、いくつかのオーディオ・デコーダは音響心理学的モデルを有することがあることを注意しておくべきである。そのようなオーディオ・デコーダの例は、たとえばドルビー・デジタルおよびドルビー・デジタル・プラスである。この音響心理学的モデルは、(本稿で概説される)クロマ・ベクトルの決定のために使用されてもよい。
【0028】
さらなる側面によれば、ソフトウェア・プログラムが記述される。ソフトウェア・プログラムは、プロセッサ上で実行され、コンピューティング装置上で実行されたときに本稿で概説される方法段階を実行するよう適応されていてもよい。
【0029】
もう一つの側面によれば、記憶媒体が記述される。記憶媒体は、プロセッサ上で実行され、コンピューティング装置上で実行されたときに本稿で概説される方法段階を実行するよう適応されたソフトウェア・プログラムを有していてもよい。
【0030】
さらなる側面によれば、コンピュータ・プログラム・プロダクトが記述される。コンピュータ・プログラムは、コンピュータ上で実行されたときに本稿で概説される方法段階を実行するための実行可能命令を有していてもよい。
【0031】
本稿で概説される好ましい実施形態を含む方法およびシステムは担体で使われても、あるいは本稿で開示される他の方法およびシステムとの組み合わせで使用されてもよいことを注意しておくべきである。さらに、本稿で概説される方法およびシステムのあらゆる側面は、任意に組み合わされることができる。特に、請求項の特徴は任意の仕方で互いに組み合わされることができる。
【発明を実施するための形態】
【0033】
今日の記憶解決策は、音楽コンテンツの巨大なデータベースをユーザーに提供する容量をもつ。Simfyのようなオンライン・ストリーミング・サービスは1300万曲を超える曲を提供し、こうしたストリーミング・サービスは大きなデータベース内をナビゲートして、加入者に適切な音楽トラックを選択してストリーミングする課題に直面している。同様に、データベースに記憶された音楽の大きな個人的コレクションをもつユーザーは、適切な音楽を選択するという同じ問題をもつ。そのような大量のデータを扱うことができるためには、音楽を発見するための新しい方法が望ましい。特に、ユーザーの音楽に対する選好される嗜好が既知であるときに、音楽検索システムがユーザーに対して似た種類の音楽を提案することが有益でありうる。
【0034】
音楽類似性を識別するためには、テンポ、リズム、ビート、ハーモニー、メロディー、ジャンルおよびムードといった数多くの高レベルの内容的特徴が必要とされることがあり、音楽コンテンツから抽出される必要があることがある。音楽情報検索(MIR)は、これらの音楽特徴の多くを計算する方法を提供する。たいていのMIR戦略は中レベルの記述子に依拠しており、それから必要な高レベルの音楽特徴が得られる。中レベルの記述子の一例は、
図1に示されているいわゆるクロマ・ベクトル100である。クロマ・ベクトル100は通例はK次元ベクトルであり、ベクトルの各次元がある半音クラスのスペクトル・エネルギーに対応する。西洋音楽の場合、典型的にはK=12である。他の種類の音楽については、Kは異なる値を有していてもよい。クロマ・ベクトル100は、ある特定の時点でのオーディオ信号のスペクトル101(たとえば、短期間フーリエ変換(STFT: Short Term Fourier Transform)の振幅スペクトルを使って決定される)を単一のオクターブにマッピングして折り畳むことによって得られてもよい。よって、クロマ・ベクトルは、その特定の時点におけるオーディオ信号のメロディーおよびハーモニー内容を捕捉する一方、スペクトログラム101に比べて音色の変化にはそれほど敏感ではない。
【0035】
図1に示されるように、オーディオ信号のクロマ特徴は、スペクトル101を音楽ピッチ知覚のシェパード(Shepard)の螺旋表現102に投影することによって視覚化できる。表現102では、クロマは真上から見たときの螺旋102の周上の位置に当たる。他方、高さは横から見たときの螺旋の垂直位置に当たる。高さはオクターブの位置に対応する。すなわち、高さはオクターブを示す。クロマ・ベクトルは、振幅スペクトル101を螺旋101のまわりに巻き付け、螺旋102の周上で対応する諸位置にあるが異なるオクターブ(異なる高さ)にあるスペクトル・エネルギーをクロマ(または音程クラス)に投影し、それにより半音クラスのスペクトル・エネルギーを総和することによって抽出されうる。
【0036】
半音クラスのこの分布はオーディオ信号のハーモニー内容を捕捉する。クロマ・ベクトルの時間的な進行はクロマグラムとして知られる。クロマ・ベクトルおよびクロマグラム表現は、コードネーム(たとえばC、EおよびGの大きなクロマ・ベクトル値をもつCメジャー・コード)を識別するため、オーディオ信号の全体的なキーを推定するため(キーは楽曲の最終落着点または楽曲のあるセクションの焦点を表わす主三和音、コード、長調/短調を特定する)、オーディオ信号の旋法を推定するため(旋法は音階の型を表わす、たとえば長調または短調の楽曲)、楽曲内および楽曲間の類似性を検出するため(楽曲内のハーモニー/メロディー類似性または類似した楽曲のプレイリストを生成するための楽曲のコレクションにわたるハーモニー/メロディー類似性)、楽曲を特定するためおよび/または楽曲のさびを抽出するために使われてもよい。
【0037】
よって、クロマ・ベクトルは、オーディオ信号の短期スペクトルの単一のオクターブへのスペクトル的折り畳みおよび折り畳まれたスペクトルのその後の12次元ベクトルへの分解によって得ることができる。この操作は、オーディオ信号の適切な時間‐周波数表現に依拠する。適切な時間‐周波数表現は好ましくは周波数領域において高い分解能をもつ。オーディオ信号のそのような時間‐周波数表現の計算は計算集約的であり、既知のクロマトグラム計算方式では多くの計算パワーを費消する。
【0038】
以下では、クロマ・ベクトルを決定するための基本的な方式について述べる。表1(第四オクターブにおける西洋音楽の諸半音についてのHz単位での周波数)で見て取れるように、基準ピッチ、一般にはA4音についての440Hzがわかっているときには、音の周波数への直接的なマッピングが可能である。
【0039】
【表1】
二つの半音の周波数の間の倍数は
12√2であり、よって二つのオクターブの間の倍数は2=(
12√2)
12である。周波数を倍にすることは音を1オクターブ上げることと等価なので、この体系は周期的と見ることができ、円筒状の座標系102で表示することができる。ここで、動径軸が12音の一つまたはクロマ値の一つを表わし(cと称する)、長手方向位置が音高を表わす(hと称する)。結果として、知覚されるピッチまたは周波数fはf=2
c+h、c∈[0,1)、h∈Z として書くことができる。
【0040】
オーディオ信号(たとえば楽曲)をそのメロディーおよびハーモニーに関して解析するとき、時間を追ってそのハーモニー情報を示す視覚的表示が望ましい。一つの方法はいわゆるクロマグラムである。クロマグラムでは、一フレームのスペクトル内容がクロマ・ベクトルと呼ばれる半音の12次元のベクトルにマッピングされ、時間に対してプロットされる。クロマ値cは上述した式を
【数1】
と倒置することによって所与の周波数fから得ることができる。ここで、
【数2】
は、複数のオクターブの単一のオクターブへのスペクトル的な折り畳み(螺旋表現102によって描かれる)に対応する床演算である。あるいはまた、クロマ・ベクトルは、オクターブ毎の12個の帯域通過フィルタのセットを使うことによって決定されてもよい。ここで、各帯域通過は、特定の時点におけるオーディオ信号の振幅スペクトルから特定のクロマのスペクトル・エネルギーを抽出するよう適応される。よって、各クロマ(または音程クラス)に対応するスペクトル・エネルギーが振幅スペクトルから単離され、その後、その特定のクロマについてのクロマ値cを与えるよう合計されることができる。A音のクラスについての例示的な帯域通過フィルタ200が
図2に示されている。クロマ・ベクトルおよびクロマグラムを決定するためのそのようなフィルタ・ベースの方法は非特許文献1に記載されている。さらなるクロマ抽出方法は非特許文献2に記載されている。両文献は参照によって組み込まれる。
【0041】
上記で概説したように、クロマ・ベクトルおよびクロマグラムの決定は、オーディオ信号の適切な時間‐周波数表現の決定を必要とする。これは典型的には高い計算上の複雑さに結びついている。本稿では、MIRプロセスを、すでに同様の時間‐周波数変換を利用している既存のオーディオ処理方式に統合することによって計算努力を軽減することが提案される。そのような既存のオーディオ処理方式の望ましい品質は、高い周波数分解能をもつ時間‐周波数表現、時間‐周波数変換の効率的な実装および結果として得られるクロマグラムの信頼性および品質を潜在的に改善するために使用できる追加的なモジュールの可用性であろう。
【0042】
オーディオ信号(特に音楽信号)は典型的にはエンコードされた(すなわち圧縮された)フォーマットで記憶および/または伝送される。これは、MIRプロセスがエンコードされたオーディオ信号との関連ではたらくべきであるということを意味する。したがって、時間‐周波数変換を利用するオーディオ・エンコーダとの関連でオーディオ信号のクロマ・ベクトルおよび/またはクロマグラムを決定することが提案される。特に、高効率(HE)エンコーダ/デコーダ、スペクトル帯域複製(SBR)を利用するエンコーダ/デコーダを利用することが提案される。そのようなSBRベースのエンコーダ/デコーダの例はHE-AAC(先進オーディオ符号化)エンコーダ/デコーダである。HE-AACコーデックは、非常に低いビットレートでリッチな聴取経験を実現するために設計されており、放送、モバイル・ストリーミングおよびダウンロード・サービスにおいて広く使われている。代替的なSBRベースのコーデックはたとえば、AACコア・エンコーダの代わりにmp3コア・エンコーダを利用するmp3PROコーデックである。以下では、HE-AACコーデックを参照するが、提案される方法およびシステムは他のオーディオ・コーデック、特に他のSBRベースのコーデックにも適用可能であることを注意しておくべきである。
【0043】
よって、本稿では、オーディオ信号のクロマ・ベクトル/クロマグラムを決定するために、HE-AACにおいて利用可能な時間‐周波数変換を利用することが提案される。よって、クロマ・ベクトル決定のための計算上の複雑さが有意に軽減される。クロマグラムを得るためにオーディオ・エンコーダを使うことの、計算コストの節約以外のもう一つの利点は、典型的なオーディオ・コーデックが人間の知覚に焦点を当てているという事実である。これは、典型的なオーディオ・コーデック(HE-AACコーデックなど)が、さらなるクロマグラム向上のために好適でありうる良好な音響心理学的ツールを提供するということを意味する。換言すれば、クロマグラムの信頼性を高めるために、オーディオ・エンコーダ内で利用可能な音響心理学的ツールを利用することが提案される。
【0044】
さらに、オーディオ・エンコーダ自身も追加的なクロマグラム計算モジュールの存在から裨益することを注意しておくべきである。クロマグラム計算モジュールが助けになるメタデータ、たとえば和音情報を計算することを許容し、そうした情報がオーディオ・エンコーダによって生成されるビットストリームのメタデータ中に含められてもよいからである。この追加的なメタデータは、デコーダ側での向上した消費者経験を提供するために使われることができる。特に、追加的なメタデータはさらなるMIR応用のために使用されてもよい。
【0045】
図3は、オーディオ・エンコーダ(たとえばHE-AACエンコーダ)300およびクロマグラム決定モジュール310の例示的なブロック図を示している。オーディオ・エンコーダ300は、時間‐周波数変換302を使ってオーディオ信号301を時間‐周波数領域に変換することによってオーディオ信号301をエンコードする。そのような時間‐周波数変換302の典型的な例は、たとえばAACエンコーダのコンテキストにおいて使われる離散コサイン変換(MDCT)である。典型的には、オーディオ信号301の諸サンプルx[k]のフレームは周波数変換(たとえばMDCT)を使って周波数領域に変換され、それにより周波数係数X[k]の組を与える。周波数係数X[k]の組は、量子化・符号化ユニット303において量子化され、エンコードされる。ここで、量子化および符号化は典型的には知覚モデル306を考慮に入れる。その後、符号化されたオーディオ信号は、エンコード・ユニットまたはマルチプレクサ・ユニット304において特定のビットストリーム・フォーマット(たとえばMP4フォーマット、3GPフォーマット、3G2フォーマットまたはLATMフォーマット)にエンコードされる。特定のビットストリーム・フォーマットへのエンコードは典型的には、エンコードされたオーディオ信号へのメタデータの追加を含む。結果として、特定のフォーマットのビットストリーム305(たとえば、MP4フォーマットでのHE-AACビットストリーム)が得られる。このビットストリーム305は典型的にはオーディオ・コア・エンコーダからのエンコードされたデータならびにSBRエンコーダ・データおよび追加的なメタデータを含む。
【0046】
クロマグラム決定モジュール310は、オーディオ信号301の短期振幅スペクトル101を決定するために時間‐周波数変換311を利用する。その後、クロマ・ベクトルのシーケンス(すなわちクロマグラム313)がユニット312において、短期振幅スペクトル101のシーケンスから決定される。
【0047】
図3は、統合されたクロマグラム決定モジュールを有するエンコーダ350をさらに示している。組み合わされたエンコーダ350の処理ユニットのいくつかは別個のエンコーダ300のユニットに対応する。しかしながら、上記のように、エンコードされたビットストリーム355は、クロマグラム353から導出される追加的なメタデータを用いて、ビットストリーム・エンコード・ユニット354において向上させられてもよい。他方、クロマグラム決定モジュールは、エンコーダ350の時間‐周波数変換302および/またはエンコーダ350の知覚的モデル306を利用してもよい。換言すれば、クロマグラム計算352(可能性としては音響心理学的処理356を使う)は、クロマ・ベクトル100が決定されるもとになる振幅スペクトル101を決定するために変換302によって与えられる周波数係数X[k]の組を利用してもよい。さらに、知覚的に顕著なクロマ・ベクトル100を決定するために、知覚的モデル306が考慮に入れられてもよい。
【0048】
図4は、HE-AACバージョン1およびHE-AACバージョン2(すなわち、ステレオ信号のパラメトリック・ステレオ(PS: parametric stereo)エンコード/デコードを含むHE-AAC)において使用される例示的なSBRベースのオーディオ・コーデック400を示している。特に、
図4は、いわゆるデュアル・レート・モード、すなわちエンコーダ410中のコア・エンコーダ412がSBRエンコーダ414の半分のサンプリング・レートで機能するモードで動作するHE-AACコーデック400のブロック図を示している。エンコーダ410の入力において、入力サンプリング・レートfs=fs_inでのオーディオ信号301が与えられる。該オーディオ信号301は、オーディオ信号301の低周波数成分を与えるために、ダウンサンプリング・ユニット411において因子2だけダウンサンプリングされる。典型的には、ダウンサンプリング・ユニット411は、ダウンサンプリングに先立って高周波成分を除去する(それによりエイリアシングを避ける)ために低域通過フィルタを有する。ダウンサンプリング・ユニット411は、低下したサンプリング・レートfs/2=fs_in/2の低周波成分を与える。低周波成分はコア・エンコーダ412(たとえばAACエンコーダ)によってエンコードされて、低周波成分のエンコードされたビットストリームを与える。
【0049】
オーディオ信号の高周波成分はSBRパラメータを使ってエンコードされる。この目的のため、オーディオ信号301は分解フィルタバンク413(たとえば、64個などの周波数帯を有する直交ミラー・フィルタバンク(QMF))を使って分解される。結果として、オーディオ信号の複数のサブバンド信号が得られる。ここで、各時点tにおいて(または各サンプルkにおいて)、前記複数のサブバンド信号は、この時点tにおけるオーディオ信号301のスペクトルの指標を与える。前記複数のサブバンド信号はSBRエンコーダ414に与えられる。SBRエンコーダ414は、複数のSBRパラメータを決定する。ここで、前記複数のSBRパラメータは、対応するデコーダ430において(再構成された)低周波成分からオーディオ信号の高周波成分を再構成することを可能にする。SBRエンコーダ414は典型的には、前記複数のSBRパラメータおよび(再構成された)低周波成分に基づいて決定される再構成された高周波成分がもとの高周波成分を近似するよう、前記複数のSBRパラメータを決定する。この目的のために、SBRエンコーダ414は、もとの高周波成分と再構成された高周波成分に基づく誤差最小化基準(たとえば平均二乗誤差基準)を利用してもよい。
【0050】
前記複数のSBRパラメータおよび前記低周波成分のエンコードされたビットストリームはマルチプレクサ415(たとえばエンコーダ・ユニット304)内で結合され、全体的なビットストリーム、たとえばHE-AACビットストリーム305を与え、これが記憶されたり伝送されたりしてもよい。全体的なビットストリーム305は、前記複数のSBRパラメータを決定するためにSBRエンコーダ414によって使用されたSBRエンコーダ設定に関する情報をも含む。さらに、本稿では、オーディオ信号301のクロマグラム313、353から導出されたメタデータを全体的なビットストリーム305に加えることが提案される。
【0051】
対応するデコーダ430は、前記全体的なビットストリーム305から、サンプリング・レートfs_out=fs_inの圧縮されていないオーディオ信号を生成してもよい。コア・デコーダ431はSBRパラメータを、低周波成分のエンコードされたビットストリームから分離する。さらに、コア・デコーダ431(たとえばAACデコーダ)は、低周波成分のエンコードされたビットストリームをデコードして、デコーダ430の内部サンプリング・レートfsでの再構成された低周波成分の時間領域信号を与える。再構成された低周波成分は分解フィルタバンク432を使って分解される。デュアル・レート・モードでは、内部サンプリング・レートfsはデコーダ430においては、入力サンプリング・レートfs_inおよび出力サンプリング・レートfs_outとは異なることを注意しておくべきである。これは、AACデコーダ431はダウンサンプリングされた領域で、すなわち入力サンプリング・レートfs_inの半分でありオーディオ信号301の出力サンプリング・レートfs_outの半分である内部サンプリング・レートfsで機能するという事実のためである。
【0052】
分解フィルタバンク432(たとえば32個などの周波数帯域を有する直交ミラー・フィルタバンク)は典型的には、エンコーダ410において使われる分解フィルタバンク413に比べ半分の数の周波数帯しかもたない。これは、オーディオ信号全体ではなく、再構成された低周波成分のみが分解される必要があるという事実のためである。再構成された低周波成分の結果として得られる複数のサブバンド信号は、受領されるSBRパラメータとの関連でSBRデコーダ433において、再構成された高周波成分の複数のサブバンド信号を生成するために使用される。その後、合成フィルタバンク434(たとえば64個などの周波数帯の直交ミラー・フィルタバンク)が、時間領域での再構成されたオーディオ信号を与えるために使われる。典型的には、合成フィルタバンク434は、分解フィルタバンク432の周波数帯の数の二倍の数の周波数帯をもつ。再構成された低周波成分の前記複数のサブバンド信号は、合成フィルタバンク434の下半分の諸周波数帯に入力されてもよく、再構成された高周波成分の前記複数のサブバンド信号は、合成フィルタバンク434の上半分の諸周波数帯に入力されてもよい。合成フィルタバンク434の出力における再構成されたオーディオ信号は、信号サンプリング・レートfs_out=fs_inに対応する内部サンプリング・レート2fsをもつ。
【0053】
よって、HE-AACコーデック400は、SBRパラメータの決定のために時間‐周波数変換413を提供する。しかしながら、この時間‐周波数変換413は典型的には、非常に低い周波数分解能をもち、よってクロマグラム決定のために好適ではない。他方、コア・エンコーダ412、特にAACコード・エンコーダも、より高い周波数分解能で時間‐周波数変換(典型的にはMDCT)を利用する。
【0054】
AACコア・エンコーダはオーディオ信号をブロックまたはフレームと呼ばれる一連のセグメントに分解する。窓〔ウィンドー〕と呼ばれる時間領域フィルタは、これらのブロックにおいてデータを修正することによって、ブロックからブロックへのなめらかな遷移を提供する。AACコア・エンコーダは、それぞれ長ブロックおよび短ブロックと称されるM=1028サンプルおよびM=128サンプルという二つのブロック長の間で動的に切り換えるよう適応される。よって、AACコア・エンコーダは、トーン様(定常状態の、ハーモニー的にリッチな複雑なスペクトル信号)(長ブロックを使う)とインパルス様(過渡的な信号)(8個の短ブロックのシーケンスを使う)との間で揺れ動くオーディオ信号をエンコードするよう適応される。
【0055】
サンプルからなる各ブロックは、修正離散コサイン変換(MDCT)を使って周波数領域に変換される。ブロック・ベース(フレーム・ベースとも称される)の時間周波数変換のコンテキストにおいて典型的に生じるスペクトル漏れの問題を回避するために、MDCTは重複窓を利用する。すなわち、MDCTはいわゆる重複変換の例である。このことは
図5に示されている。
図5は、フレームまたはブロック501のシーケンスを含むオーディオ信号301を示している。図示した例では、各ブロック501はオーディオ信号301のM個のサンプルを含む(長ブロックについてはM=1024、短ブロックについてはM=128)。上記変換を単一のブロックだけに適用するのではなく、重複変換であるMDCT変換は、シーケンス502によって示されるように、二つの隣り合うブロックを重複的に変換する。逐次のブロック間の遷移をさらになめらかにするために、長さ2Mの窓関数w[k]がさらに適用される。この窓は、エンコーダにおける変換とデコーダにおける逆変換で、二回適用されるので、窓関数w[k]はプリンセン・ブラッドリー(Princen-Bradley)条件を満たすべきである。結果として得られるMDCT変換は次のように書ける。
【0056】
【数3】
これは、M個の周波数係数X[k]が2M個の信号サンプルx[l]から決定されることを意味する。
【0057】
その後、M個の周波数係数X[k]のブロックのシーケンスが音響心理学的モデルに基づいて量子化される。さまざまな規格で記述されるようなオーディオ符号化において使われるさまざまな音響心理学的モデルがある。規格は、ISO13818-7:2005、動画およびオーディオ符号化、2005またはISO14496-3:2009、情報技術――オーディオ・ビジュアル・オブジェクトの符号化――パート3:オーディオ、2009、または3GPP、一般オーディオ・コーデック(General Audio Codec)オーディオ処理機能;向上aac-Plus一般オーディオ・コーデック;エンコーダ仕様AACパート、2004などであり、これらは参照によって組み込まれる。音響心理学的モデルは典型的には、人間の耳が異なる周波数について異なる感度をもつという事実を考慮に入れる。換言すれば、特定の周波数においてオーディオ信号を知覚するために必要とされる音圧レベル(SPL: sound pressure level)は周波数の関数として変化する。これは、
図6のaに示されている。ここでは、人間の耳の聴力曲線(hearing curve)601の閾値が周波数の関数として示されている。これは、周波数係数X[k]は、
図6のaに示される聴力曲線601の閾値の考慮のもとに量子化されることができることを意味する。
【0058】
さらに、人間の耳の聴力はマスキングを受けることを注意しておくべきである。用語マスキングは、スペクトル・マスキングおよび時間的マスキングに細分されうる。スペクトル・マスキングは、ある周波数区間にある、あるエネルギー・レベルのマスク音が、該マスク音の周波数区間の直接的なスペクトル近傍にある他の音をマスクしうることを示す。このことは
図6のbに示されている。この図では、聴力の閾値602が、それぞれ中心周波数0.25kHz、1kHzおよび4kHzのまわりの60dBのレベルの狭帯域ノイズのスペクトル近傍において増大することが観察できる。高まった聴覚閾値602はマスキング閾値Thrと称される。これは、周波数係数X[k]は、
図6のbに示されるマスキング閾値602の考慮のもとに量子化できることを意味する。時間的マスキングは、先行するマスク信号がその後の信号をマスクしうること(ポストマスキングまたは前方マスキングと称される)および/または後続のマスク信号が先行する信号をマスクしうること(プレマスキングまたは後方マスキングと称される)を示す。
【0059】
例として、3GPP規格からの音響心理学モデルが使用されうる。このモデルは、複数のスペクトル・エネルギーX
enを計算することによって、対応する複数の周波数帯bについて、適切な音響心理学的マスキング閾値を決定する。サブバンドb(本稿では周波数帯域bとも称され、HE-AACのコンテキストではスケール因子帯域とも称される)についての複数のスペクトル・エネルギーX
en[b]は、MDCT周波数係数X[k]から、二乗されたMDCT係数を合計することによって、すなわち次式のように決定されてもよい。
【0060】
【数4】
一定のオフセットを使うことは、最悪ケースのシナリオ、つまり可聴周波数帯全体についてのトーン様信号をシミュレートする。換言すれば、音響心理学的モデルはトーン様成分と非トーン様成分の間の区別をしない。すべての信号フレームはトーン様であると想定され、これは「最悪ケース」シナリオを含意する。結果として、トーン様と非トーン様の成分の区別はなされず、よってこの音響心理学的モデルは計算効率がよい。
【0061】
使用されるオフセット値はSNR(信号対雑音比)値に対応する。これは、高いオーディオ品質を保証するために適切に選ばれるべきである。標準的なAACについては、対数SNR値29dBが定義され、サブバンドbにおける閾値は次式のように決定される。
【0062】
【数5】
3GPPモデルは、サブバンドbにおける閾値Thr
sc[b]を隣接するサブバンドb−1、b+1の閾値Thr
sc[b−1]またはThr
sc[b+1]の重み付けされたバージョンと比較し、最大を選択することによって人間の聴覚系をシミュレートする。比較は、非対称的なマスキング曲線602の異なる傾きをシミュレートするために、下隣についてと上隣についてでそれぞれ異なる周波数依存の重み付け係数s
h[b]およびs
l[b]を使ってなされる。結果として、最低のサブバンドから始まって15dB/Barkの傾きを近似する第一のフィルタリング動作は
Thr'
spr[b]=max(Thr
sc[b],s
h[b]・Thr
sc[b−1])
によって与えられ、最高のサブバンドから始まって30dB/Barkの傾きを近似する第二のフィルタリング動作は
Thr
spr[b]=max(Thr'
spr[b],s
l[b]・Thr'
spr[b+1])
によって与えられる。
【0063】
計算されたマスキング閾値Thr
spr[b]からサブバンドbについての全体的な閾値Thr[b]を得るために、静穏閾値601(Thr
quiet[b]とも称される)も考慮に入れられるべきである。これは、各サブバンドbについて二つのマスキング閾値の高いほうの値をそれぞれ選択して、二つの曲線のうちのより優勢な部分が考慮に入れられるようにすることによってなされうる。これは、全体的なマスキング閾値が
Thr'[b]=max(Thr
spr[b],Thr
quiet[b])
として決定されうることを意味する。
【0064】
さらに、全体的なマスキング閾値Thr'[b]にプレエコーの問題に対してより耐性をもたせるために、以下の追加的な修正が適用されてもよい。過渡的信号が発生するとき、いくつかのサブバンドbにおいてはあるブロックから別のブロックにかけてエネルギーの急増または急減がある可能性が高い。エネルギーのそのようなジャンプは、マスキング閾値Thr'[b]の急増につながりうる。これは量子化品質の突然の低下につながる。これは、プレエコー・アーチファクトの形でのエンコードされたオーディオ信号における可聴エラーにつながりうる。よって、マスキング閾値は、現在ブロックについてのマスキング閾値Thr[b]を前のブロックのマスキング閾値Thr
last[b]の関数として選択することによって、時間軸に沿って平滑化されてもよい。具体的には、現在ブロックについてのマスキング閾値Thr[b]は
Thr[b]=max(rpmn・Thr
spr[b],min(Thr'[b],rpelev・Thr
last[b]))
として決定されてもよい。ここで、rpmn、rpelvは適切な平滑化パラメータである。過渡信号についてのマスキング閾値のこの還元はより高いSMR(Signal to Masking Ratio[信号対マスキング比])値を引き起こし、よりよい量子化に、ひいてはプレエコー・アーチファクトの形の可聴エラーの減少につながる。
【0065】
マスキング閾値Thr[b]は、ブロック501のMDCT係数を量子化するための量子化および符号化ユニット303内で使われる。マスキング閾値Thr[b]より下にあるMDCT係数は相対的に低精度で量子化され、符号化される。すなわち、より少数のビットが投入される。マスキング閾値Thr[b]はまた、本稿でのちに概説するクロマグラム計算352の前の知覚的処理356のコンテキストにおいて(またはクロマグラム計算352のコンテキストにおいて)使用されることもできる。
【0066】
全体として、コア・エンコーダ412は:
・(長ブロックおよび短ブロックについての)MDCT係数のシーケンスの形で時間‐周波数領域におけるオーディオ信号301の表現;および
・(長ブロックおよび短ブロックについての)周波数(サブバンド)依存のマスキング閾値Thr[b]の形での信号依存の知覚的モデル、
を提供すると要約されうる。
【0067】
このデータは、オーディオ信号301のクロマグラム353の決定のために使われることができる。長ブロック(M=1024サンプル)については、ブロックのMDCT係数は典型的には、クロマ・ベクトルを決定するために十分高い周波数分解能をもつ。HE-AACエンコーダ410におけるAACコア・コーデック412はサンプリング周波数の半分で動作するので、HE-AACにおいて使われるMDCT変換領域表現は、SBRエンコードなしのAACの場合より、長ブロックについて一層よい周波数分解能をもつ。例として、サンプリング・レート44.1kHzのオーディオ信号301について、長ブロックについてのMDCT係数の周波数分解能はΔf=10.77Hz/ビンである。これは、たいていの西洋ポピュラー音楽についてクロマ・ベクトルを決定するために十分高い。換言すれば、HE-AACエンコーダのコア・エンコーダの長ブロックの周波数分解能は、クロマ・ベクトルの種々の音程クラスにスペクトル・エネルギーを信頼できる仕方で割り当てる(
図1および表1参照)ために十分高い。
【0068】
他方、短ブロック(M=128)については、周波数分解能はΔf=86.13Hz/ビンである。基本周波数(F0)は第六オクターブまでは86.13Hzより多く離間しないので、短ブロックによって与えられる周波数分解能は、典型的には、クロマ・ベクトルの決定のために十分ではない。それにもかかわらず、典型的には短ブロックのシーケンスに関連付けられる過渡オーディオ信号はトーン様情報(たとえば木琴または鉄琴またはテクノ音楽ジャンルからのもの)を含みうるので、短ブロックについてのクロマ・ベクトルを決定することも可能であることが望ましいことがありうる。そのようなトーン様情報は、信頼できるMIRアプリケーションのために重要でありうる。
【0069】
以下では、短ブロックのシーケンスの周波数分解能を増すためのさまざまな例示的な方式が記述される。これらの例示的な方式は、もとの時間領域オーディオ信号ブロックの周波数領域への変換に比べて、低下した計算量をもつ。これは、これらの例示的な方式は、(時間領域信号からの直接決定に比べ)低下した計算量で短ブロックのシーケンスからのクロマ・ベクトルの決定を許容することを意味する。
【0070】
上記で概説したように、AACエンコーダは典型的には、過渡オーディオ信号をエンコードするために単一の長ブロックの代わりに八つの短ブロックのシーケンスを選択する。よって、AACの場合N=8として、八つのMDCT係数ブロックX
l[k]、l=0,…,N−1のシーケンスが与えられる。短ブロック・スペクトルの周波数分解能を増すための第一の方式は、長さM
short(=128)のN個の周波数係数ブロックX
1ないしX
Nを連結して、周波数係数をインターリーブすることである。この短ブロック・インターリーブ方式(SIS: short-block interleaving scheme)は、周波数係数をその時間インデックスに従って配列し直して長さM
long=NM
short(=1024)の新たなブロックX
SISにする。これは、
X
SIS[kN+1]=X
l[k]、k∈[0,…,M
short−1]、l∈[0,…,N−1]
に従ってなされる。周波数係数のこのインターリーブは周波数係数の数を増し、よって分解能を増す。だが、異なる時点における同じ周波数のN個の低分解能係数が同じ時点の異なる周波数のN個の高分解能係数にマッピングされるので、±N/2ビンの分散をもつ誤差が導入される。それにもかかわらず、HE-AACまたはAACの場合、この方法は、M
short=128の長さをもつN=8個の短ブロックの係数をインターリーブすることによって、M
long=1024個の係数をもつスペクトルを推定することを許容する。
【0071】
N個の短ブロックのシーケンスの周波数分解能を増すためのさらなる方式は、適応ハイブリッド変換(AHT: adaptive hybrid transform)に基づく。AHTは、時間信号が比較的一定のままであればそのスペクトルは典型的には急速に変化しないという事実を活用する。そのようなスペクトル信号の脱相関は、低周波数の諸ビンでのコンパクトな表現につながる。信号を脱相関させるための変換は、カルーネン・レーベ変換(KLT: Karhunen-Loeve Transform)を近似するDCT-II(離散コサイン変換)であってもよい。KLTは、脱相関の意味で最適である。しかしながら、KLTは信号依存であり、よって高い複雑さなしには適用可能ではない。AHTの次の公式は、上述したSISと、対応する短ブロック周波数ビンの周波数係数を脱相関させるためのDCT-II核との組み合わせと見ることができる。
【0072】
【数6】
周波数係数X
AHTのブロックは、SISに比べ、低下した誤差分散とともに、増大した周波数分解能をもつ。同時に、AHT方式の計算量は、オーディオ信号サンプルの長ブロックの完全なMDCTに比べて低い。
【0073】
よって、AHTは、高分解能の長ブロック・スペクトルを推定するためにフレーム(これは長ブロックと等価)のN=8個の短ブロックにわたって適用されてもよい。それにより、結果として得られるクロマグラムの品質は、短ブロック・スペクトルのシーケンスを使う代わりの、長ブロック・スペクトルの近似から裨益する。DCT-IIが非重複変換なので、一般に、AHT方式は、任意の数のブロックに適用できることを注意しておくべきである。したがって、AHT方式を短ブロックのシーケンスの部分集合に適用することが可能である。これは、AHT方式を、当該オーディオの特定の条件に適応させるために有益でありうる。例として、スペクトル類似性指標を計算し、短ブロックのシーケンスを異なる複数の部分集合にセグメント分割することによって、短ブロックのシーケンス内の複数の異なる静的エンティティを区別することができる。これらの部分集合は、次いで、それらの部分集合の周波数分解能を増すために、AHTを用いて処理されることができる。
【0074】
MDCT係数ブロックX
l[k]、l=0,…,N−1のシーケンスの周波数分解能を増すためのさらなる方式は、短ブロックのシーケンスの根底にあるMDCT変換および長ブロックのMDCT変換のポリフェーズ記述を使うことである。これをすることにより、MDCT係数ブロックX
l[k]、l=0,…,N−1のシーケンス(すなわち、短ブロックのシーケンス)の長ブロックについてのMDCT係数ブロックへの厳密な変換を実行する変換行列Yが決定されることができる。すなわち、
【数7】
ここで、X
PPCは長ブロックのMDCT係数を表わす[3,MN]行列であり、二つの先行フレームの影響Yは[MN,MN,3]変換行列であり(ここで、行列Yの第三の次元は行列Yの係数が三次多項式であるという事実を表わす。つまり、行列の要素はaz
-2+bz
-1+cz
-0によって記述される式であり、ここで、zは1フレームの遅延を表わす)、[X
0,…,X
N-1]はN個の短ブロックのMDCT係数から形成される[1,MN]ベクトルである。Nは長さN×Mをもつ長ブロックを形成する短ブロックの数であり、Mは短ブロック内のサンプルの数である。
【0075】
変換行列Yは、N個の短ブロックをもとの時間領域に変換するための合成行列Gおよび長ブロックの時間領域サンプルを周波数領域に変換する分解行列Hから決定される。すなわち、Y=G・Hである。変換行列YはN組の短ブロックMDCT係数から長ブロックのMDCT係数の完璧な再構成を許容する。変換行列Yが疎であることを示すことができる。これは、変換精度に著しく影響することなく、変換行列Yの行列係数のかなりの割合が0と置くことができることを意味する。これは、行列GおよびHがいずれも重み付けされたDCT-IV変換係数を有するという事実のためである。DCTは直交変換なので、結果として得られる変換行列Y=G・Hは疎な行列である。したがって、変換行列Yの係数の多くは、ほぼ0なので、計算において無視できる。典型的には、主対角線のまわりのq個の係数の帯を考えることが十分である。qは1からM×Nまで選ぶことができるので、このアプローチは、短ブロックから長ブロックへの変換の複雑さおよび精度をスケーラブルにする。変換の複雑さが、O(q・M・N・3)であることを示すことができる。これは、再帰的実装におけるO((MN)
2)またはO(M・N・log(M・N))の長ブロックMDCTの複雑さと比較される。これは、ポリフェーズ変換行列Yを使う変換が、長ブロックのMDCT再計算よりも低い計算量で実装されうることを意味する。
【0076】
ポリフェーズ変換に関する詳細は、参照によって組み込まれる非特許文献3に記載されている。
【0077】
ポリフェーズ変換の結果として、長ブロックMDCT係数X
PPCの推定が得られ、これは短ブロックMDCT係数[X
0,…,X
N-1]よりN倍高い周波数分解能を与える。これは、推定された長ブロックMDCT係数X
PPCが典型的には、クロマ・ベクトルの決定のための十分高い周波数分解能をもつことを意味する。
【0078】
図7aないし
図7eは、長ブロックMDCTに基づくスペクトログラム700から見て取れる相異なる周波数成分を含むオーディオ信号の例示的なスペクトログラムを示している。
図7bに示されるスペクトログラム701から見て取れるように、スペクトログラム700は、推定された長ブロックMDCT係数X
PPCによってよく近似される。図示した例では、q=32である。すなわち、変換行列Yの係数の3%のみが考慮に入れられる。これは、長ブロックMDCT係数X
PPCの推定が、かなり低減した計算上の複雑さで決定できることを意味する。
【0079】
図7cは、推定された長ブロックMDCT係数X
AHTに基づくスペクトログラム702を示している。周波数分解能が、スペクトログラム700に示される正しい長ブロックMDCT係数の周波数分解能より低いことが観察できる。同時に、推定された長ブロックMDCT係数X
AHTが
図7dのスペクトログラム703に示される推定された長ブロックMDCT係数X
SISよりも高い周波数分解能を与えることが見て取れる。
図7dのスペクトログラム703も
図7eのスペクトログラム704によって示される短ブロックMDCT係数[X
0,…,X
N-1]より高い周波数分解能を与える。
【0080】
上記で概説したさまざまな短ブロックから長ブロックへの変換方式によって与えられる異なる周波数分解能は、長ブロックMDCT係数のさまざまな推定値から決定されるクロマ・ベクトルの品質にも反映される。このことは、いくつかの試験ファイルについて平均クロマ類似性を示す
図8に示されている。クロマ類似性は、たとえば、推定された長ブロックMDCT係数から得られるクロマ・ベクトルに比べた、長ブロックMDCT係数から得られたクロマ・ベクトルの平均平方偏差を示しうる。参照符号801は、クロマ類似性の基準を示す。ポリフェーズ変換に基づいて決定された推定が比較的高い類似性の度合い802を有することが見て取れる。ポリフェーズ変換はq=32、すなわち、完全な変換複雑さの3%で実行された。さらに、適応ハイブリッド変換をもって達成される類似度803、短ブロック・インターリーブ方式をもって達成される類似度804および短ブロックに基づいて達成される類似度805が示されている。
【0081】
このように、SBRベースのコア・エンコーダ(たとえばAACコア・エンコーダ)によって提供されるMDCT係数に基づくクロマグラムの決定を許容する方法を記述してきた。対応する長ブロックMDCT係数を近似することによって、短ブロックMDCT係数のシーケンスの分解能がいかにして高められるかを概説してきた。長ブロックMDCT係数は、時間領域からの長ブロックMDCT係数の再計算に比較して低下した計算量で決定できる。よって、低下した計算量で、過渡オーディオ信号についてクロマ・ベクトルを決定することも可能である。
【0082】
以下では、クロマグラムを知覚的に向上させる方法が記述される。特に、オーディオ・エンコーダによって提供される知覚的モデルを利用する方法が記述される。
【0083】
すでに上記で概説したように、知覚的かつ不可逆なオーディオ・エンコーダにおける音響心理学的モデルの目的は、典型的には、所与のビットレートに依存して、スペクトルのある種の部分がどのくらい細かく量子化されるべきかを決定することである。換言すれば、エンコーダの音響心理学的モデルは、すべての周波数帯bについて知覚的な重要度について格付けを提供する。知覚的に重要な部分は主としてハーモニックな内容を有しているとの前提のもとに、マスキング閾値の適用は、クロマグラムの品質を高めるはずである。オーディオ信号のノイズ様の部分は無視されるか少なくとも減衰されるので、ポリフォニー信号についてのクロマグラムは特に裨益するはずである。
【0084】
フレームごとの(すなわちブロックごとの)マスキング閾値Thr[b]がいかにして周波数帯bについて決定されうるかはすでに概説した。エンコーダは、すべての周波数係数X[k]についてのマスキング閾値Thr[b]を、周波数インデックスkを有する周波数帯b(これはHE-AACの場合、スケール因子帯とも称される)におけるオーディオ信号のエネルギーX
en[b]と比較することによって、このマスキング閾値を使う。エネルギー値X
en[b]がマスキング値を下回るときは常に、X[k]は無視される。すなわち、X[k]=0 ∀X
en[b]<Thr[b]。典型的には、周波数係数(すなわちエネルギー値)X[k]の対応する周波数帯bのマスキング閾値Thr[b]との係数ごとの比較は、本稿に記載される方法に基づいて決定されるクロマグラムに基づく和音認識アプリケーション内の帯域ごとの比較に対して、軽微な品質上の恩恵しか提供しない。他方、係数ごとの比較は増大した計算量につながる。よって、周波数帯b当たりの平均エネルギー値X
en[b]を使うブロックごとの比較が好ましいことがありうる。
【0085】
典型的には、ハーモニック寄与者(harmonic contributor)を有する周波数帯bのエネルギー(スケール因子帯エネルギーとも称される)は、知覚的なマスキング閾値Thr[b]より高いべきである。他方、主としてノイズを有する周波数帯bのエネルギーはマスキング閾値Thr[b]より小さいべきである。よって、エンコーダは、周波数係数X[k]の知覚的に動機付けられた、ノイズ低減されたバージョンを提供し、これは所与のフレームについてのクロマ・ベクトル(そしてフレームのシーケンスについてのクロマグラム)を決定するために使用できる。
【0086】
あるいはまた、修正されたマスキング閾値がオーディオ・エンコーダにおいて利用可能なデータから決定されてもよい。ある特定のブロック(またはフレーム)についてスケール因子帯エネルギー分布X
en[b]を与えられるとき、すべてのスケール因子帯bについて一定のSMR(信号対マスク比)を使って修正されたマスキング閾値Thr
constSMR、すなわちThr
constSMR[b]=X
en[b]−SMRが決定されてもよい。この修正されたマスキング閾値は、減算しか必要としないので、低い計算コストで計算できる。さらに、修正されたマスキング閾値はスペクトルのエネルギーに厳密に従い、よって、無視されるスペクトル・データの量が、エンコーダのSMR値を調整することによって簡単に調整できる。
【0087】
トーンのSMRがトーン振幅およびトーン周波数に依存しうることを注意しておくべきである。よって、上述した一定のSMRの代わりに、スケール因子帯エネルギーX
en[b]および/または帯域インデックスbに基づいてSMRが調整/修正されてもよい。
【0088】
さらに、ある特定のブロック(フレーム)についてスケール因子帯域エネルギー分布X
en[b]がオーディオ・エンコーダから直接受領されることができることを注意しておくべきである。オーディオ・エンコーダは典型的には、(音響心理学的)量子化のコンテキストにおいてこのスケール因子帯域エネルギー分布X
en[b]を決定する。フレームのクロマ・ベクトルを決定する方法は、上述したマスキング閾値を決定するために、(エネルギー値を計算するのではなく)オーディオ・エンコーダから計算済みのスケール因子帯域エネルギー分布X
en[b]を受領し、それによりクロマ・ベクトル決定の計算量を軽減してもよい。
【0089】
修正されたマスキング閾値は、X[k]=0 ∀X[k]<Thr[b]と置くことによって適用されてもよい。スケール因子帯b当たり一つのハーモニック寄与者しかないと想定されるならば、この帯域b内のエネルギーX
en[b]とエネルギー・スペクトルの係数X[k]は同様の値をもつはずである。したがって、一定のSMR値によるX
en[b]の低減は、修正されたマスキング閾値を与えるはずで、それはスペクトルのハーモニック部分のみを捕捉する。スペクトルの非ハーモニック部分は0と置かれるべきである。フレームのクロマ・ベクトル(およびフレームのシーケンスのクロマグラム)は、修正された(すなわち知覚的に処理された)周波数係数から決定されうる。
【0090】
図9は、オーディオ信号のブロックのシーケンスからクロマ・ベクトルのシーケンスを決定する例示的な方法900のフローチャートを示している。ステップ901では、周波数係数(たとえばMDCT係数)のブロックが受領される。この周波数係数のブロックは、オーディオ信号のサンプルの対応するブロックからこの周波数係数のブロックを導出したオーディオ・エンコーダから受領される。特に、周波数係数のブロックは、オーディオ信号の(ダウンサンプリングされた)低周波数成分からSBRベースのオーディオ・エンコーダによって導出されたものであってもよい。周波数係数のブロックが短ブロックのシーケンスに対応する場合、方法900は、本稿で概説される短ブロックから長ブロックへの変換方式(たとえば、SIS、AHTまたはPPC方式)を実行する(段階902)。結果として、周波数係数の長ブロックについての推定値が得られる。任意的に、方法900は、上記で概説したように、(推定された)周波数係数のブロックを、音響心理学的な周波数依存の閾値に提出してもよい(段階903)。その後、結果として得られる周波数係数の長ブロックからクロマ・ベクトルが決定される(段階904)。この方法がブロックのシーケンスについて繰り返されれば、オーディオ信号のクロマグラムが得られる(段階905)。
【0091】
本稿では、低下した計算量でクロマ・ベクトルおよび/またはクロマグラムを決定するためのさまざまな方法およびシステムが記述される。特に、オーディオ・コーデック(HE-AACコーデックなど)によって与えられるオーディオ信号の時間‐周波数表現を利用することが提案される。(望ましくまたは望ましくなくエンコーダが短ブロックに切り替わったオーディオ信号の過渡部分についても)連続的なクロマグラムを提供するために、短ブロック時間‐周波数表現の周波数分解能を増大させる方法が記述される。さらに、クロマグラムの知覚的顕著性を改善するために、オーディオ・コーデックによって提供される音響心理学的モデルを利用することが提案される。
【0092】
本記載および図面は単に提案される方法およびシステムの原理を例解するものであることを注意しておくべきである。よって、当業者は、本稿で明示的に記載されたり示されたりしていなくても、本発明の原理を具現し、その精神および範囲内に含まれるさまざまな構成を考案できるであろうことは理解されるであろう。さらに、本稿に記載したあらゆる例は、主として、読者が提案される方法およびシステムの原理および当該技術の進歩への発明者によって貢献される概念を理解するのを助ける教育目的のために明確に意図されたものであり、そのような特定的に記載された例および条件への限定なしに解釈されるものである。さらに、本発明の原理、側面および実施形態ならびにその具体例を記載する本稿のあらゆる陳述は、その等価物をも包含することが意図されている。
【0093】
本稿において記述された方法およびシステムは、ソフトウェア、ファームウェアおよび/またはハードウェアによって実装されてもよい。ある種のコンポーネントは、たとえばデジタル信号プロセッサまたはマイクロプロセッサ上で走るソフトウェアとして実装されてもよい。他のコンポーネントはたとえば、ハードウェアおよびまたは特定用途向け集積回路として実装されてもよい。記載される方法およびシステムにおいて遭遇される信号は、ランダム・アクセス・メモリまたは光記憶媒体のような媒体上に記憶されていてもよい。該信号は、電波ネットワーク、衛星ネットワーク、無線ネットワークまたは有線ネットワーク、たとえばインターネットのようなネットワークを介して転送されてもよい。本稿に記載される方法およびシステムを利用する典型的な装置は、ポータブル電子装置またはオーディオ信号を記憶および/または再生するために使われる他の消費者設備である。
いくつかの態様を記載しておく。
〔態様1〕
オーディオ信号のサンプルのブロックについてクロマ・ベクトルを決定する方法であって:
・スペクトル帯域複製ベースのオーディオ・エンコーダ(410)のコア・エンコーダ(412)から、前記オーディオ信号のサンプルのブロックから導出された周波数係数の対応するブロックを受領する段階であって、前記オーディオ・エンコーダは、周波数係数の前記ブロックから前記オーディオ信号のエンコードされたビットストリーム(305)を生成するよう適応されている、段階と;
・周波数係数の受領されたブロックに基づいて前記オーディオ信号のサンプルのブロックについてのクロマ・ベクトルを決定する段階とを含む、
方法。
〔態様2〕
前記スペクトル帯域複製ベースのオーディオ・エンコーダが:高効率先進オーディオ符号化、mp3PROおよびMPEG-D USACのいずれか一つを適用する、態様1記載の方法。
〔態様3〕
周波数係数の前記ブロックが:
・MDCTと称される修正離散コサイン変換の係数のブロック;
・MDSTと称される修正離散サイン変換の係数のブロック;
・DFTと称される離散フーリエ変換の係数のブロック;および
・MCLTと称される修正複素重複変換の係数のブロック、
のうちいずれか一つである、態様1または2記載の方法。
〔態様4〕
・前記サンプルの各ブロックが、それぞれM個のサンプルからなるN個の相続く短ブロックを含んでおり;
・前記周波数係数の各ブロックが、それぞれM個の周波数係数からなるN個の対応する短ブロックを含んでいる、
態様1ないし3のうちいずれか一項記載の方法。
〔態様5〕
・M個の周波数係数の前記N個の短ブロックからの前記サンプルのブロックに対応する周波数係数の長ブロックを推定する段階であって、周波数係数の推定される長ブロックが周波数係数の前記N個の短ブロックに比べ増大した周波数分解能をもつ、段階と;
・前記オーディオ信号の前記サンプルのブロックについての前記クロマ・ベクトルを、周波数係数の推定された長ブロックに基づいて決定する段階とをさらに含む、
態様4記載の方法。
〔態様6〕
周波数係数の長ブロックを推定する前記段階は、周波数係数の前記N個の短ブロックの対応する周波数係数をインターリーブし、それにより周波数係数のインターリーブされた長ブロックを与えることを含む、態様5記載の方法。
〔態様7〕
周波数係数の長ブロックを推定する前記段階は、エネルギー圧縮属性をもつ変換、たとえばDCT-II変換を周波数係数のインターリーブされた長ブロックに適用することによって、周波数係数の前記N個の短ブロックのN個の対応する周波数係数を脱相関することを含む、態様6記載の方法。
〔態様8〕
周波数係数の長ブロックを推定する前記段階は:
・周波数係数の前記N個の短ブロックの複数の部分集合を形成する段階であって、部分集合当たりの短ブロックの数Lは前記オーディオ信号に基づいて選択される、段階と;
・各部分集合について、周波数係数の前記短ブロックの対応する周波数係数をインターリーブし、それによりその部分集合の周波数係数のインターリーブされた中間ブロックを与える段階と;
・各部分集合について、エネルギー圧縮属性をもつ変換、たとえばDCT-II変換を、その部分集合の周波数係数の前記インターリーブされた中間ブロックに適用し、それにより前記複数の部分集合についての周波数係数の複数の推定された中間ブロックを与える段階とを含む、
態様5記載の方法。
〔態様9〕
周波数係数の長ブロックを推定する前記段階は、M個の周波数係数のN個の短ブロックにポリフェーズ変換を適用することを含む、態様5記載の方法。
〔態様10〕
・前記ポリフェーズ変換は、M個の周波数係数の前記N個の短ブロックをN×M個の周波数係数の正確な長ブロックに数学的に変換するための変換行列に基づき;
・前記ポリフェーズ変換は、変換行列係数のある割合を0と置いた前記変換行列の近似を利用する、
態様9記載の方法。
〔態様11〕
前記変換行列係数の90%以上の割合が0と置かれる、態様10記載の方法。
〔態様12〕
周波数係数の長ブロックを推定する前記段階は:
・周波数係数の前記N個の短ブロックの複数の部分集合を形成する段階であって、部分集合当たりの短ブロックの数Lは前記オーディオ信号に基づいて選択され、L<Nである、段階と;
・前記複数の部分集合に中間ポリフェーズ変換を適用して、周波数係数の複数の推定された中間ブロックを与える段階とを含み、
前記中間ポリフェーズ変換は、M個の周波数係数のL個の短ブロックをL×M個の周波数係数の正確な中間ブロックに数学的に変換するための中間変換行列に基づき;
前記中間ポリフェーズ変換は、中間変換行列係数のある割合を0と置いた前記中間変換行列の近似を利用する、
態様5記載の方法。
〔態様13〕
前記割合が可変であり、それにより周波数係数の推定されるブロックの品質を変える、態様10ないし12のうちいずれか一項記載の方法。
〔態様14〕
M=128かつN=8である、態様4ないし13のうちいずれか一項記載の方法。
〔態様15〕
態様5ないし14のうちいずれか一項記載の方法であって、さらに:
・サンプルの複数のブロックに対応する周波数係数の超長ブロックを、周波数係数の対応する複数の長ブロックから推定する段階をさらに含み、周波数係数の推定される超長ブロックは、周波数係数の前記複数の長ブロックに比べ増大した周波数分解能をもつ、方法。
〔態様16〕
前記クロマ・ベクトルを決定する段階が、周波数係数の受領されたブロックから導出される周波数係数の第二のブロックに対して周波数依存の音響心理学的処理を適用する段階を含む、態様1ないし15のうちいずれか一項記載の方法。
〔態様17〕
周波数係数の前記第二のブロックが、周波数係数の前記推定された長ブロックである、態様5ないし7および9ないし11のうちいずれか一項を引用する場合の態様16記載の方法。
〔態様18〕
周波数係数の前記第二のブロックが、周波数係数の前記受領されたブロックである、態様1ないし4のうちいずれか一項を引用する場合の態様16記載の方法。
〔態様19〕
周波数係数の前記第二のブロックが、周波数係数の前記複数の推定された中間ブロックの一つである、態様8または12を引用する場合の態様16記載の方法。
〔態様20〕
周波数係数の前記第二のブロックが、周波数係数の前記推定された超長ブロックである、態様15を引用する場合の態様16記載の方法。
〔態様21〕
周波数依存の音響心理学的処理を適用する前記段階が:
・周波数係数の前記第二のブロックの少なくとも一つの周波数係数から導出された値を、周波数依存のエネルギー閾値と比較する段階と;
・前記周波数係数が前記エネルギー閾値より小さければ、前記周波数係数を0と置く段階とを含む、
態様16ないし20のうちいずれか一項記載の方法。
〔態様22〕
前記少なくとも一つの周波数係数から導出された前記値が、対応する複数の周波数についての複数の周波数係数から導出される平均エネルギーに対応する、態様21記載の方法。
〔態様23〕
前記エネルギー閾値は、前記コア・エンコーダによって適用される音響心理学的モデルから導出される、態様21または22記載の方法。
〔態様24〕
前記エネルギー閾値は、周波数係数のブロックを量子化するために前記コア・エンコーダによって使用される周波数依存のマスキング閾値から導出される、態様23記載の方法。
〔態様25〕
前記クロマ・ベクトルを決定する段階が:
・前記第二のブロックの周波数係数の一部または全部を前記クロマ・ベクトルの諸音程クラスに分類する段階と;
・前記クロマ・ベクトルの諸音程クラスについての累積されたエネルギーを、分類された周波数係数に基づいて決定する段階とを含む、
態様16ないし24のうちいずれか一項記載の方法。
〔態様26〕
前記周波数係数は、前記クロマ・ベクトルの諸音程クラスに関連付けられた諸帯域通過フィルタを使って分類される、態様25記載の方法。
〔態様27〕
・前記オーディオ信号のサンプルのブロックのシーケンスからクロマ・ベクトルのシーケンスを決定し、それにより前記オーディオ信号のクロマグラムを与える段階をさらに含む、態様1ないし26のうちいずれか一項記載の方法。
〔態様28〕
オーディオ信号をエンコードするよう適応されたオーディオ・エンコーダであって:
・前記オーディオ信号のダウンサンプリングされた低周波数成分をエンコードするよう適応されたコア・エンコーダであって、前記コア・エンコーダは、サンプルのブロックを周波数領域に変換してそれにより周波数係数の対応するブロックを与えることによって、低周波数成分のサンプルのブロックをエンコードするよう適応されている、コア・エンコーダと;
・周波数係数のブロックに基づいて前記オーディオ信号の低周波数成分のサンプルのブロックのクロマ・ベクトルを決定するよう適応されたクロマ決定ユニットとを有する、
エンコーダ。
〔態様29〕
前記オーディオ信号の対応する高周波数成分をエンコードするよう適応されたスペクトル帯域複製エンコーダをさらに有する、態様28記載のエンコーダ。
〔態様30〕
・前記コア・エンコーダおよび前記スペクトル帯域複製エンコーダによって与えられるデータから、エンコードされたビットストリームを生成するよう適応されたマルチプレクサをさらに有しており、前記マルチプレクサは、前記クロマ・ベクトルから導出された情報を、メタデータとして、エンコードされたビットストリームに加えるよう適応されている、態様29記載のエンコーダ。
〔態様31〕
前記エンコードされたビットストリームは、MP4フォーマット、3GPフォーマット、3G2フォーマット、LATMフォーマットのうちのいずれか一つでエンコードされる、態様30記載のエンコーダ。
〔態様32〕
オーディオ信号をデコードするよう適応されたオーディオ・デコーダであって:
・エンコードされたビットストリームを受領するよう適応されており、前記エンコードされたビットストリームから周波数係数のブロックを抽出するよう適応されている多重分離およびデコード・ユニットであって、周波数係数の前記ブロックは、前記オーディオ信号のダウンサンプリングされた低周波数成分のサンプルの対応するブロックと関連付けられている、多重分離およびデコード・ユニットと;
・周波数係数の前記ブロックに基づいて前記オーディオ信号のサンプルの前記ブロックのクロマ・ベクトルを決定するよう適応されたクロマ決定ユニットとを有する、
デコーダ。
〔態様33〕
プロセッサ上で実行され、該プロセッサ装置上で実行されたときに態様1ないし27のうちいずれか一項記載の方法を実行するよう適応されたソフトウェア・プログラム。
〔態様34〕
プロセッサ上で実行され、コンピューティング装置上で実行されたときに態様1ないし27のうちいずれか一項記載の方法を実行するよう適応されたソフトウェア・プログラムを有する記憶媒体。
〔態様35〕
コンピュータ上で実行されたときに態様1ないし27のうちいずれか一項記載の方法を実行するための実行可能命令を有するコンピュータ・プログラム・プロダクト。