(57)【特許請求の範囲】
【請求項１】
Nチャネルのオーディオ・プログラムをエンコードする方法であって、前記プログラムはある時間区間にわたって指定され、前記時間区間は時刻t1から時刻t2までの部分区間を含み、N個のエンコードされた信号チャネルのM個の出力チャネルへの時間変化する混合A(t)が前記時間区間上で指定されており、MはN以下であり、当該方法は：
前記N個のエンコードされた信号チャネルのサンプルに適用されるときに前記N個のエンコードされた信号チャネルのオーディオ・コンテンツの前記M個の出力チャネルへの第一の混合を実装するN×Nプリミティブ行列の第一のカスケードを決定する段階であって、前記第一の混合は、該第一の混合が少なくとも実質的にA(t1)に等しいという意味で前記時間変化する混合A(t)に整合し、N×Nプリミティブ行列は、N−1個の行が0に等しい非対角要素および絶対値1をもつ対角要素を含む行列として定義される、段階と；
プリミティブ行列の前記第一のカスケードおよび前記部分区間上で定義される補間関数とともに、N×Nの更新されたプリミティブ行列の諸カスケードのシーケンスを示す補間値を決定する段階であって、更新されたプリミティブ行列の各カスケードは、前記N個のエンコードされた信号チャネルのサンプルに適用されるとき、前記N個のエンコードされた信号チャネルの前記M個の出力チャネルへの、前記部分区間における異なる時刻に関連付けられた更新された混合を実装し、それぞれの前記更新された混合は、前記時間変化する混合A(t)と整合する、段階と；
エンコードされたオーディオ・コンテンツ、前記補間値およびプリミティブ行列の前記第一のカスケードを示すエンコードされたビットストリームを生成する段階とを含む、
方法。
【請求項２】
前記プリミティブ行列のそれぞれが単位プリミティブ行列である、請求項１記載の方法。
【請求項３】
前記プログラムのN個のチャネルのサンプルに対して行列演算を実行することによって、前記エンコードされたオーディオ・コンテンツを生成する段階をも含み、該段階は、前記サンプルに行列カスケードのシーケンスを適用することによることを含み、前記シーケンスにおける各行列カスケードは、プリミティブ行列のカスケードであり、行列カスケードの前記シーケンスは、前記第一のカスケードのプリミティブ行列の逆行列のカスケードである第一の逆行列カスケードを含む、請求項２記載の方法。
【請求項４】
前記プログラムのN個のチャネルのサンプルに対して行列演算を実行することによって、前記エンコードされたオーディオ・コンテンツを生成する段階をも含み、該段階は、前記サンプルに行列カスケードのシーケンスを適用することによることを含み、前記シーケンスにおける各行列カスケードは、プリミティブ行列のカスケードであり、前記シーケンスにおける各行列カスケードは、N×Nの更新されたプリミティブ行列のカスケードの対応するカスケードの逆であり、N＝Mであり、前記M個の出力チャネルは無損失で復元された前記プログラムの前記N個のチャネルと同じである、請求項２記載の方法。
【請求項５】
プリミティブ行列の前記第一のカスケードはシード・プリミティブ行列を実装し、前記補間値は前記シード・プリミティブ行列についてのシード・デルタ行列を示す、請求項１記載の方法。
【請求項６】
前記プログラムのオーディオ・コンテンツまたはエンコードされたコンテンツの、M1個のスピーカー・チャネルへの時間変化するダウンミックスA2(t)も、前記時間区間上で指定されており、M1はM未満の整数であり、当該方法は：
前記区間内の各時点tにおいて前記エンコードされたオーディオ・コンテンツのM1個のチャネルのサンプルに適用されたときに、前記Nチャネルのオーディオ・プログラムの前記M1個のスピーカー・チャネルへのダウンミックスを実装するM1×M1プリミティブ行列の第二のカスケードを決定する段階であって、前記ダウンミックスは、前記時間変化する混合A2(t)に整合する、段階とをさらに含む、
請求項４記載の方法。
【請求項７】
Nチャネル・オーディオ・プログラムのM個のチャネルの復元のための方法であって、前記プログラムはある時間区間にわたって指定され、前記時間区間は時刻t1から時刻t2までの部分区間を含み、N個のエンコードされた信号チャネルのM個の出力チャネルへの時間変化する混合A(t)は前記時間区間上で指定されており、当該方法は：
エンコードされたオーディオ・コンテンツ、補間値およびN×Nプリミティブ行列の第一のカスケードを示すエンコードされたビットストリームを取得する段階であって、N×Nプリミティブ行列は、N−1個の行が0に等しい非対角要素および絶対値1をもつ対角要素を含む行列として定義される、段階と；
前記補間値、プリミティブ行列の前記第一のカスケードおよび前記部分区間上の補間関数から、N×Nの更新されたプリミティブ行列の諸カスケードのシーケンスを決定するよう補間を実行する段階とを含み、
N×Nプリミティブ行列の前記第一のカスケードは、前記エンコードされたオーディオ・コンテンツのN個のエンコードされた信号チャネルのサンプルに適用されるときに前記N個のエンコードされた信号チャネルのオーディオ・コンテンツの前記M個の出力チャネルへの第一の混合を実装するものであり、前記第一の混合は、該第一の混合が少なくとも実質的にA(t1)に等しいという意味で前記時間変化する混合A(t)に整合し、
プリミティブ行列の前記第一のカスケードおよび前記補間関数とともに、前記補間値は、N×Nの更新されたプリミティブ行列の諸カスケードのシーケンスを示し、更新されたプリミティブ行列の各カスケードは、前記エンコードされたオーディオ・コンテンツの前記N個のエンコードされた信号チャネルのサンプルに適用されるとき、前記N個のエンコードされた信号チャネルの前記M個の出力チャネルへの、前記部分区間における異なる時刻に関連付けられた更新された混合を実装し、それぞれの前記更新された混合は、前記時間変化する混合A(t)と整合する、
方法。
【請求項８】
前記プリミティブ行列のそれぞれが単位プリミティブ行列である、請求項７記載の方法。
【請求項９】
前記エンコードされたオーディオ・コンテンツは、前記プログラムのN個のチャネルのサンプルに対して行列演算を実行することによって生成されたものであり、該生成は、該サンプルに行列カスケードのシーケンスを適用することによることを含み、前記シーケンスにおける各行列カスケードはプリミティブ行列のカスケードであり、前記シーケンスにおける各行列カスケードは、N×Nの更新されたプリミティブ行列のカスケードの対応するカスケードの逆であり、N＝Mであり、前記M個の出力チャネルは無損失で復元された前記プログラムの前記N個のチャネルと同じである、請求項８記載の方法。
【請求項１０】
前記プログラムのオーディオ・コンテンツまたはエンコードされたコンテンツのM1個のスピーカー・チャネルへの時間変化するダウンミックスA2(t)も前記時間区間上で指定されており、M1はN未満の整数であり、当該方法は、
M1×M1プリミティブ行列の第二のカスケードを受領する段階と；
前記区間内の各時点においてM1×M1の前記第二のカスケードを前記エンコードされたオーディオ・コンテンツのM1個のチャネルのサンプルに適用して、前記Nチャネル・オーディオ・プログラムの前記M1個のスピーカー・チャネルへのダウンミックスを実装する段階であって、前記ダウンミックスは、前記時間変化する混合A2(t)と整合する、段階とをさらに含む、
請求項９記載の方法。
【請求項１１】
前記エンコードされたビットストリームが前記補間関数をも示す、請求項７記載の方法。
【請求項１２】
プリミティブ行列の前記第一のカスケードはシード・プリミティブ行列を実装し、前記補間値は前記シード・プリミティブ行列についてのシード・デルタ行列を示す、請求項７記載の方法。
【請求項１３】
当該方法がさらに：
前記エンコードされたオーディオ・コンテンツのサンプルに、更新されたN×Nプリミティブ行列の前記カスケードのうちの少なくとも一つを適用する段階であって、前記エンコードされたオーディオ・コンテンツの前記サンプルに、シード・プリミティブ行列およびシード・デルタ行列を別個に適用して変換されたサンプルを生成し、該変換されたサンプルを前記補間関数に従って線形結合し、それにより前記Nチャネル・オーディオ・プログラムの前記M個のチャネルのサンプルを示す復元されたサンプルを生成することによることを含む、段階をさらに含む、
請求項７記載の方法。
【請求項１４】
前記補間関数が前記エンコードされたビットストリームのいくつかの区間にわたって実質的に一定であり、前記エンコードされたビットストリームの、前記補間関数が実質的に一定である区間の間には、補間は実行されない、請求項７記載の方法。
【請求項１５】
前記補間値は、精度のあるビット数をもって表現される正規化されたデルタ値と、精度のこのビット数の指示と、精度値とを含み、前記正規化されたデルタ値は、デルタ値の正規化されたバージョンを示し、前記デルタ値は前記プリミティブ行列の係数の変化のレートを示し、前記精度値は、前記プリミティブ行列の係数を表わすために必要とされる精度に対し、前記デルタ値を表わすために必要とされる精度の増大を示す、請求項７記載の方法。
【請求項１６】
前記デルタ値は、前記正規化されたデルタ値を、前記プリミティブ行列の係数の分解能および前記精度値に依存するスケール因子によってスケーリングすることによって導出される、請求項１５記載の方法。
【請求項１７】
前記エンコードされたビットストリームから検査語を抽出し、前記オーディオ・プログラムのセグメントの諸チャネルが正しく復元されているかどうかを、前記オーディオ・プログラムの前記セグメントの復元された諸チャネルから導出される第二の検査語を、前記エンコードされたビットストリームから抽出された前記検査語と比較することによって、検証する段階をさらに含む、請求項７記載の方法。
【請求項１８】
Nチャネルのオーディオ・プログラムをエンコードするよう構成されたオーディオ・エンコーダであって、前記プログラムはある時間区間にわたって指定され、前記時間区間は時刻t1から時刻t2までの部分区間を含み、N個のエンコードされた信号チャネルのM個の出力チャネルへの時間変化する混合A(t)が前記時間区間上で指定されており、MはN以下であり、当該エンコーダは請求項１ないし６のうちいずれか一項記載の方法を実行するよう構成されている、エンコーダ。
【請求項１９】
Nチャネル・オーディオ・プログラムの復元を実装するよう構成されたデコーダであって、前記プログラムはある時間区間にわたって指定され、前記時間区間は時刻t1から時刻t2までの部分区間を含み、N個のエンコードされた信号チャネルのM個の出力チャネルへの時間変化する混合A(t)は前記時間区間上で指定されており、当該デコーダは請求項７ないし１７のうちいずれか一項記載の方法を実行するよう構成されている、デコーダ。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願への相互参照
本願は2013年9月27日に出願された米国仮特許出願第61/883,890号からの優先権を主張するものである。同出願の内容はここに参照によってその全体において組み込まれる。
【０００２】
技術分野
本発明は、オーディオ信号処理に、より詳細には、補間された行列を使った、マルチチャネル・オーディオ・プログラム（少なくとも一つのオーディオ・オブジェクト・チャネルおよび少なくとも一つのスピーカー・チャネルを含むオブジェクト・ベースのオーディオ・プログラムを示す）のレンダリングならびに該プログラムのエンコードおよびデコードに関する。いくつかの実施形態では、デコーダは、プログラムの諸チャネルをレンダリングすることにおいて使うための補間された行列を決定するために、シード・プリミティブ行列の集合に対して補間を実行する。いくつかの実施形態は、ドルビー・トゥルーHD（Dolby  TrueHD）として知られるフォーマットのオーディオ・データを生成、デコードおよび／またはレンダリングする。
【背景技術】
【０００３】
ドルビーおよびドルビー・トゥルーHDはドルビー・ラボラトリーズ・ライセンシング・コーポレイションの商標である。
【０００４】
オーディオ・プログラムをレンダリングすることの複雑さならびに金銭上および計算上のコストは、レンダリングされるべきチャネルの数とともに増す。オブジェクト・ベースのオーディオ・プログラムのレンダリングおよび再生の間、オーディオ・コンテンツは、通常のスピーカー・チャネル・ベースのプログラムのレンダリングおよび再生の間に生起するより典型的にはずっと（たとえば一桁）多くのチャネル（たとえば、オブジェクト・チャネルおよびスピーカー・チャネル）をもつ。典型的にはまた、再生のために使われるスピーカー・システムは、通常のスピーカー・チャネル・ベースのプログラムの再生のために用いられる数よりずっと多数のスピーカーを含む。
【０００５】
本発明の実施形態は、任意のマルチチャネル・オーディオ・プログラムのチャネルをレンダリングするために有用であるが、本発明の多くの実施形態は、多数のチャネルをもつオブジェクト・ベースのオーディオ・プログラムのチャネルをレンダリングするために特に有用である。
【０００６】
オブジェクト・ベースのオーディオ・プログラムをレンダリングするために（たとえば映画館における）再生システムを用いることが知られている。オブジェクト・ベースのオーディオ・プログラムは、意図される全体的な聴覚体験を作り出すために、スクリーン上の画像、ダイアログ、ノイズおよびスクリーン上の（またはスクリーンに対する）種々の位置から発するサウンド効果に対応する多数の異なるオーディオ・オブジェクトならびに背景音楽および周囲効果（これはプログラムのスピーカー・チャネルによって示されてもよい）を示しうる。そのようなプログラムの正確な再生は、オーディオ・オブジェクト・サイズ、位置、強度、動きおよび奥行きに関して、コンテンツ・クリエーターによって意図されるものにできるだけ近く対応する仕方で音が再生されることを要求する。
【０００７】
オブジェクト・ベースのオーディオ・プログラムの生成の間、典型的には、レンダリングのために用いられるラウドスピーカーは再生環境中の任意の位置に位置されるのであり、必ずしも（公称上の）水平面内の所定の配置またはプログラム生成の時点で知られていた他の任意の所定の配置ではないことが想定される。典型的には、プログラムに含まれるメタデータは、たとえばスピーカーの三次元アレイを使って、（三次元体積において）ある見かけの空間位置にまたはある軌跡に沿ってプログラムの少なくとも一つのオブジェクトをレンダリングするためのレンダリング・パラメータを示す。たとえば、プログラムのオブジェクト・チャネルは、（該オブジェクト・チャネルによって示される）オブジェクトがレンダリングされる見かけの空間位置の三次元軌跡を示す対応するメタデータを有していてもよい。軌跡は、（再生環境の、床上に位置されていると想定されるスピーカーの部分集合の平面内または他の水平面内の）「床」位置のシーケンスと、（それぞれ再生環境の少なくとも一つの他の水平面に位置されると想定されるスピーカーの部分集合を駆動することによって決定される）「床上方」位置のシーケンスとを含んでいてもよい。
【０００８】
オブジェクト・ベースのオーディオ・プログラムは、伝統的なスピーカー・チャネル・ベースのオーディオ・プログラムに対して多くの点で有意な改善を呈する。スピーカー・チャネル・ベースのオーディオは、オブジェクト・チャネル・ベースのオーディオより、特定のオーディオ・オブジェクトの空間的再生に関して、より制限されているからである。スピーカー・チャネル・ベースのオーディオ・プログラムはスピーカー・チャネル（オブジェクト・チャネルではない）のみからなり各スピーカー・チャネルは典型的には、聴取環境における特定の個別スピーカーについてのスピーカー・フィードを決定する。
【０００９】
オブジェクト・ベースのオーディオ・プログラムを生成およびレンダリングするためのさまざまな方法およびシステムが提案されている。オブジェクト・ベースのオーディオ・プログラムの生成の間、典型的には、プログラムの再生のために任意の数のラウドスピーカーが用いられること、再生のために用いられるラウドスピーカーは再生環境中の任意の位置に位置されるのであり、必ずしも（公称上の）水平面内またはプログラム生成の時点で知られていた他の任意の所定の配置ではないと想定される。典型的には、プログラムに含まれるオブジェクト関係メタデータは、たとえばスピーカーの三次元アレイを使って、（三次元体積において）ある見かけの空間位置にまたはある軌跡に沿ってプログラムの少なくとも一つのオブジェクトをレンダリングするためのレンダリング・パラメータを示す。たとえば、プログラムのオブジェクト・チャネルは、（該オブジェクト・チャネルによって示される）オブジェクトがレンダリングされる見かけの空間位置の三次元軌跡を示す対応するメタデータを有していてもよい。軌跡は、（再生環境の、床上に位置されていると想定されるスピーカーの部分集合の平面内または他の水平面内の）「床」位置のシーケンスと、（それぞれ再生環境の少なくとも一つの他の水平面に位置されると想定されるスピーカーの部分集合を駆動することによって決定される）「床上方」位置のシーケンスとを含んでいてもよい。オブジェクト・ベースのオーディオ・プログラムのレンダリングの例は、たとえば、本願の被譲渡者に譲渡された特許文献１に記載されている。
【００１０】
オブジェクト・ベースのオーディオ・プログラムは、「ベッド」チャネルを含んでいてもよい。ベッド・チャネルは、関連する時間区間にわたって位置が変化しないオブジェクトを示すオブジェクト・チャネルでありうる（よって典型的には、静的なスピーカー位置をもつ再生システム・スピーカーの集合を使ってレンダリングされる）。あるいは、ベッド・チャネルは（再生システムの特定のスピーカーによってレンダリングされる）スピーカー・チャネルであってもよい。ベッド・チャネルは、対応する時間変化する位置メタデータをもたない（ただし、時間不変の位置メタデータをもつと考えられてもよい）。ベッド・チャネルは、空間において分散しているオーディオ要素、たとえば周囲を示すオーディオを示してもよい。
【００１１】
伝統的なスピーカー・セットアップ（たとえば7.1再生システム）を通じたオブジェクト・ベースのオーディオ・プログラムの再生は、（オブジェクト・チャネルを含む）プログラムの諸チャネルを一組のスピーカー・フィードにレンダリングすることによって達成される。本発明の典型的な実施形態では、オブジェクト・ベースのオーディオ・プログラムのオブジェクト・チャネル（本稿では時にオブジェクトと称される）および他のチャネル（または別の型のオーディオ・プログラムのチャネル）をレンダリングする工程は、各時点における（レンダリングされるべきチャネルについての）空間的メタデータの、対応する利得行列（本稿では「レンダリング行列」と称される）への変換を大半において（または該変換のみを）含む。該行列は、チャネル（たとえばオブジェクト・チャネルおよびスピーカー・チャネル）のそれぞれが、特定のスピーカーについてのスピーカー・フィードによって示される（その時点での）オーディオ・コンテンツの混合にどのくらい寄与するか（すなわち、スピーカー・フィードによって示される混合におけるプログラムの各チャネルの相対的な重み）を表わす。
【００１２】
オブジェクト・ベースのオーディオ・プログラムの「オブジェクト・チャネル」は、オーディオ・オブジェクトを示すサンプルのシーケンスを示す。該プログラムは典型的には、各オブジェクト・チャネルについてのオブジェクト位置または軌跡を示す空間的位置メタデータ値のシーケンスを含む。本発明の典型的な実施形態では、プログラムのオブジェクト・チャネルに対応する位置メタデータ値のシーケンスが、そのプログラムについての時間変化する利得指定を示すM×N行列A(t)を決定するために使われる。
【００１３】
プログラムの時刻「t」におけるオーディオ・プログラムの「N」個のチャネル（たとえばオブジェクト・チャネルまたはオブジェクト・チャネルとスピーカー・チャネル）の「M」個のスピーカー（スピーカー・フィード）へのレンダリングは、各チャネルからの時刻「t」におけるオーディオ・サンプルから構成される長さ「N」のベクトルx(t)に、時刻「t」における関連する位置メタデータ（および任意的にはレンダリングされるオーディオ・コンテンツに対応する他のメタデータ、たとえばオブジェクト利得）から決定されたM×N行列A(t)を乗算することによって表わされることができる。時刻tにおけるスピーカー・フィードの、結果として得られる値（たとえば利得またはレベル）は、次式(1)のようにベクトルy(t)として表わせる。
【００１４】
【数１】
0006388924.tif 000002
式(1)は、オーディオ・プログラムのN個のチャネル（たとえば、オブジェクト・ベースのオーディオ・プログラムまたはオブジェクト・ベースのオーディオ・プログラムのエンコードされたバージョン）のM個の出力チャネル（たとえば、M個のスピーカー・フィード）へのレンダリングを記述しているが、これはN個のオーディオ・サンプルの集合が線形演算によってM個の値の集合に変換されるシナリオの一般的な集合をも表わす。たとえば、A(t)は、係数が時刻「t」の異なる値で変わらない静的な行列「A」であってもよい。もう一つの例として、A(t)（これは静的な行列Aであってもよい）は、スピーカー・チャネルの集合x(t)の、スピーカー・チャネルのより小さい集合y(t)への通常のダウンミックスを表わすことができ（あるいは、x(t)はアンビソニックス・フォーマットにおいて空間的シーンを記述するオーディオ・チャネルの集合であることができ）、スピーカー・フィードy(t)への変換はダウンミックス行列Aの乗算によって規定されることができる。公称上静的なダウンミックス行列を用いるアプリケーションにおいてでさえ、ダウンミックスのクリップ保護を保証するために、適用される実際の線形変換（行列乗算）は、動的であることがある（すなわち、静的な変換Aは、クリップ保護を確実にするために時間変化する変換A(t)に変換されてもよい）。
【００１５】
オーディオ・プログラム・レンダリング・システム（たとえば、そのようなシステムを実装するデコーダ）は、プログラムの間の毎時点「t」においてではなく、間欠的にのみ、レンダリング行列A(t)を決定するメタデータを受領してもよい（あるいは行列そのものを受領してもよい。たとえば、これは、たとえば実際にメタデータを出力するシステムの低い時間分解能、あるいはプログラムの伝送のビットレートを制限する必要など、多様な理由の任意のもののためであることができる。発明者は、レンダリング・システムが、プログラムの間の時点「t1」および「t2」それぞれにおけるレンダリング行列A(t1)とA(t2)の間で補間して、中間の時点「t3」についてのレンダリング行列A(t3)を得ることが望ましいことがありうることを認識するに至った。補間は、レンダリングされたスピーカー・フィードにおけるオブジェクトの知覚される位置が時間とともになめらかに変化することを保証するとともに、不連続な（区分的に一定な）行列更新から生じるジッパー・ノイズ（zipper  noise）のような望ましくないアーチファクトをなくしうる。補間は、線形（または非線形）であってもよく、典型的にはA(t1)からA(t2)への時間的に連続的な経路を保証するべきである。
【００１６】
ドルビー・トゥルーHDは、オーディオ信号の無損失かつスケーラブルな伝送をサポートする通常のオーディオ・コーデック・フォーマットである。源オーディオは、チャネルのサブストリームの階層構造にエンコードされ、空間的シーンのより低次元の（ダウンミックス）呈示を得るために、（サブストリーム全部ではなく）サブストリームの選択された部分集合がビットストリームから取り出され、デコードされてもよい。すべてのサブストリームがデコードされるときは、結果として得られるオーディオは、源オーディオと同一である（エンコードおよびそれに続くデコードが無損失）。
【００１７】
トゥルーHDのある商業的に利用可能なバージョンでは、源オーディオは典型的には、三つのサブストリームのシーケンスにエンコードされる7.1チャネル混合である。それらのサブストリームは、7.1チャネルのもとのオーディオの二チャネル・ダウンミックスを決定するためにデコードされることができる第一のサブストリームを含む。最初の二つのサブストリームが、もとのオーディオの5.1チャネル・ダウンミックスを決定するためにデコードされてもよい。三つ全部のサブストリームが、もとの7.1チャネル・オーディオを決定するためにデコードされてもよい。ドルビー・トゥルーHDおよびそのベースとなったメリディアン無損失パッキング（MLP:  Meridian  Lossless  Packing）技術の技術的詳細はよく知られている。トゥルーHDおよびMLP技術の諸側面は特許文献２および非特許文献１に記載されている。
【００１８】
トゥルーHDはダウンミックス行列の指定をサポートする。典型的な使用では、7.1チャネル・オーディオ・プログラムのコンテンツ・クリエーターは、7.1チャネル・プログラムを5.1チャネル混合にダウンミックスするための静的な行列と、5.1チャネル・ダウンミックスを2チャネル・ダウンミックスにダウンミックスするもう一つの静的な行列を指定する。各静的なダウンミックス行列は、クリップ保護を達成するためにダウンミックス行列のシーケンスに変換されてもよい（シーケンス中の各行列はプログラムにおける異なる区間をダウンミックスするため）。しかしながら、シーケンス中の各行列はデコーダに伝送され（あるいは、シーケンス中の各行列を決定するメタデータが伝送され）、デコーダは、プログラムについてのダウンミックス行列のシーケンスにおけるその後の行列を決定するために、いかなる以前に指定されたダウンミックス行列に対する補間も実行しない。
【００１９】
図１は、通常のトゥルーHDシステムの要素の概略図である。ここでは、エンコーダ（３０）およびデコーダ（３２）はオーディオ・サンプルに対する行列処理動作を実装するよう構成されている。図１では、エンコーダ３０は、8チャネルのオーディオ・プログラム（たとえば伝統的な7.1スピーカー・フィードの集合）を、二つのサブストリームを含むエンコードされたビットストリームとしてエンコードするよう構成されており、デコーダ３２は、該エンコードされたビットストリームをデコードして、もとの8チャネルのプログラムを（無損失に）、あるいはもとの8チャネルのプログラムの2チャネル・ダウンミックスをレンダリングするよう構成されている。エンコーダ３０は、エンコードされたビットストリームを生成し、該エンコードされたビットストリームを送達システム３１に呈するよう結合され、構成されている。
【００２０】
送達システム３１は、エンコードされたビットストリームをデコーダ３２に（たとえば記憶することおよび／または送信することによって）送達するよう結合され、構成されている。いくつかの実施形態では、システム３１は、放送システムまたはネットワーク（たとえばインターネット）を通じてデコーダ３２に、エンコードされたマルチチャネル・オーディオ・プログラムを送達することを実装する（たとえば送信する）。いくつかの実施形態では、システム３１は、エンコードされたマルチチャネル・オーディオ・プログラムを記憶媒体（たとえばディスクまたは一組のディスク）に記憶し、デコーダ３２は該記憶媒体からプログラムを読むよう構成される。
【００２１】
エンコーダ３０において「InvChAssign1」とラベル付けされたブロックは、入力プログラムのチャネルに対するチャネル入れ替え（置換行列による乗算と等価）を実行するよう構成される。置換された行列は次いで段３３においてエンコードを受け、段３３は八つのエンコードされた信号チャネルを出力する。エンコードされた信号チャネルは、再生スピーカー・チャネルに対応してもよい（だが必須ではない）。エンコードされた信号チャネルは時に、「内部」チャネルと称される。デコーダ（および／またはレンダリング・システム）は典型的にはエンコードされた信号チャネルのコンテンツをデコードし、レンダリングして入力オーディオを復元し、よってエンコードされた信号チャネルはエンコード／デコード・システムの「内部」だからである。段３３において実行されるエンコードは、置換されたチャネルのサンプルの各集合にエンコード行列（のちにより詳細に述べるように、Pn-1,…、P1-1,P0-1として特定されるn＋1個の行列乗算のカスケードとして実装される）を乗算することと等価である。
【００２２】
行列決定サブシステム３４は、出力行列の二つの集合（エンコードされたチャネルの二つのサブストリームのそれぞれに対応して一つの集合）の係数を示すデータを生成するよう構成される。出力行列の一方の集合は二つの行列P02,P12からなり、このそれぞれは次元2×2のプリミティブ行列（のちに定義）であり、エンコードされたビットストリームのエンコードされたオーディオ・チャネルの二つを含む第一のサブストリーム（ダウンミックス・サブストリーム）をレンダリング（して前記8チャネル入力オーディオの2チャネル・ダウンミックスをレンダリング）するためである。出力行列の他方の集合は行列P0,P1,…,Pnからなり、このそれぞれはプリミティブ行列であり、エンコードされたビットストリームのエンコードされたオーディオ・チャネルの八個全部を含む第二のサブストリームをレンダリング（して前記8チャネル入力オーディオ・プログラムを無損失復元）するためである。エンコーダにおいてオーディオに適用される行列P0-1,P1-1,…,Pn-1と一緒の行列P02,P12は、8入力オーディオ・チャネルを2チャネル・ダウンミックスに変換するダウンミックス行列指定に等しく、行列P0,P1,…,Pnのカスケードはエンコードされたビットストリームの8個のエンコードされたチャネルをもとの8入力チャネルにレンダリングする。
【００２３】
サブシステム３４からパッキング・サブシステム３５に出力される（各行列の）係数は、プログラムのチャネルの対応する混合に含められるべき各チャネルの相対または絶対利得を示すメタデータである。（プログラムの間のある時点についての）各レンダリング行列の係数は、混合の各チャネルが、特定の再生システム・スピーカーのためのスピーカー・フィードによって示される（レンダリングされた混合の対応する時点における）オーディオ・コンテンツの混合にどのくらい寄与するべきかを表わす。
【００２４】
（エンコード段３３から出力される）8個のエンコードされたオーディオ・チャネル、（サブシステム３４によって生成される）出力行列係数および典型的にはまた追加的データが、パッキング・サブシステム３５に呈される。パッキング・サブシステム３５は、それらをエンコードされたビットストリームにまとめ、該ビットストリームがその後送達システム３１に呈される。
【００２５】
エンコードされたビットストリームは、8個のエンコードされたオーディオ・チャネル、出力行列の前記二つの集合（エンコードされたチャネルの二つのサブストリームのそれぞれに対応して一つの集合）および典型的にはまた追加的なデータ（たとえばオーディオ・コンテンツに関するメタデータ）を示すデータを含む。
【００２６】
デコーダ３２のパース・サブシステム３６は、送達システム３１から、エンコードされたビットストリームを受け入れ（読み取りまたは受領し）、該エンコードされたビットストリームをパースする。サブシステム３６は、エンコードされたビットストリームのサブストリーム（エンコードされたビットストリームのエンコードされたチャネルのうちの二つのみを含む「第一の」サブストリームを含む）および前記第一のサブストリームに対応する出力行列（P02,P12）を行列乗算段３８（その処理の結果、もとの8チャネル入力プログラムのコンテンツの2チャネル・ダウンミックス呈示が生じる）に呈するよう動作可能である。サブシステム３６はまた、エンコードされたビットストリームのサブストリーム（エンコードされたビットストリームの8個全部のエンコードされたチャネルを含む「第二の」サブストリーム）および対応する出力行列（P0,P1,…,Pn）を行列乗算段３７に呈するようにも動作可能である。行列乗算段３７の処理の結果、もとの8チャネル・プログラムが無損失レンダリングされる。
【００２７】
より具体的には、段３８は、第一のサブストリームの二つのチャネルの二つのオーディオ・サンプルに、行列P02,P12のカスケードを乗算し、二つの線形変換されたサンプルの、結果として得られる各集合は「ChAssign0」とタイトル付けされたブロックによって表わされるチャネル置換（置換行列による乗算と等価）を受け、8個のもとのオーディオ・チャネルの、要求される2チャネル・ダウンミックスのサンプルの各対を与える。エンコーダ３０およびデコーダ３２における行列処理動作のカスケードは、8個の入力オーディオ・チャネルを2チャネル・ダウンミックスに変換するダウンミックス行列指定の適用と等価である。
【００２８】
段３７は、8個のオーディオ・サンプルの各ベクトル（エンコードされたビットストリームの8個のチャネルのフル集合のそれぞれから一つ）に行列P0,P1,…,Pnのカスケードを乗算し、8個の線形変換されたサンプルの、結果として得られる各集合は「ChAssign1」とタイトル付けされたブロックによって表わされるチャネル置換（置換行列による乗算と等価）を受け、無損失復元されたもとの8チャネル・プログラムの8個のサンプルの各集合を与える。（本システムの「無損失」特性を達成するよう）出力8チャネル・オーディオが厳密に入力8チャネル・オーディオと同じであるためには、エンコーダ３０において実行される行列処理動作は、（量子化効果を含め）厳密に、エンコードされたビットストリームの無損失の（第二の）サブストリームに対してデコーダ３２において実行される行列処理動作（すなわち、行列P0,P1,…,Pnのカスケードの乗算）の逆であるべきである。こうして、図１では、エンコーダ３０の段３３における行列処理動作は、行列P0,P1,…,Pnの逆行列の、デコーダ３２の段３７において適用される反対シーケンスでのカスケード、すなわちPn-1,…、P1-1,P0-1として特定される。
【００２９】
デコーダ３２は、エンコーダ３０によって適用されるチャネル置換の逆を適用する（デコーダ３２の要素「ChAssign1」によって表わされる置換行列はエンコーダ３０の要素「InvChAssign1」によって表わされるものの逆である）。
【００３０】
ダウンミックス行列指定（たとえば、次元が2×8の静的な行列Aの指定）が与えられると、エンコーダ３０の通常のトゥルーHDエンコーダ実装の目的は、下記の条件が満たされるように、出力行列（たとえば、図１のP0,P1,…,PnおよびP02,P12）および入力行列（Pn-1,…、P1-1,P0-1）ならびに出力（および入力）チャネル割り当てを設計することである：
１．エンコードされたビットストリームは階層的（すなわち、上記の例では、最初の二つのエンコードされたチャネルは2チャネル・ダウンミックス呈示を導出するのに十分であり、8個のエンコードされたチャネルのフル集合はもとの8チャネル・プログラムを復元するのに十分である）；
２．最上のストリームのための行列（上記の例ではP0,P1,…,Pn）は、入力オーディオがデコーダによって厳密に取得可能であるよう、厳密に可逆である。
【００３１】
典型的なコンピューティング・システムは有限精度をもって機能し、任意の可逆行列の逆を厳密に求めることは、非常に大きな精度を要求することがある。トゥルーHDはこの問題を、出力行列および入力行列（すなわちP0,P1,…,PnおよびPn-1,…、P1-1,P0-1）を「プリミティブ行列」として知られる型の正方行列に制約することによって解決する。
【００３２】
次元N×Nのプリミティブ行列Pは次の形をもつ。
【００３３】
【数２】
0006388924.tif 000003
プリミティブ行列は常に正方行列である。次元N×Nのプリミティブ行列は、一つの（トリビアルでない）行のほかは（すなわち、該行は上記の例では要素α0,α1,α2,…,αN-1を含む）次元N×Nの恒等行列と同一である。他のすべての行では、非対角要素は0であり、対角線と共有される要素は絶対値1をもつ（すなわち、＋1または−1である）。本開示における表現を簡略化するために、図面および記述は、上記トリビアルでない行における対角要素が例外となりうるものの、プリミティブ行列が＋1に等しい諸対角要素をもつことを常に想定する。しかしながら、これは一般性を失うものではなく、本開示において呈示される発想は、諸対角要素が＋1または−1でありうるプリミティブ行列の一般的なクラスに係ることを注意しておく。
【００３４】
プリミティブ行列Pがベクトルx(t)に対して作用する（すなわち乗算される）とき、結果は積Px(t)である。これは、一つを除いてすべての要素において厳密にx(t)と同じもう一つのN次元ベクトルである。このように、各プリミティブ行列は、それが操作する（またはそれが作用する）一意的なチャネルに関連付けられることができる。
【００３５】
本稿では「単位プリミティブ行列」という用語を使って、（プリミティブ行列のトリビアルでない行によって）対角線と共有される要素が絶対値1をもつ（すなわち＋1または−1である）プリミティブ行列を表わす。こうして、単位プリミティブ行列の対角線は、すべてプラス1（＋1）またはすべてマイナス1（−1）またはいくつかのプラス1およびいくつかのマイナス1からなる。プリミティブ行列は、オーディオ・プログラム・チャネルのサンプルの集合（ベクトル）の一つのチャネルを変更するだけであり、単位プリミティブ行列は、対角線上の単位値のため、無損失に可逆でもある。ここでもまた、本稿での議論を簡略化するため、単位プリミティブ行列という用語を使って、トリビアルでない行が対角要素＋1をもつプリミティブ行列を指すことにする。しかしながら、請求項を含め本稿における単位プリミティブ行列へのあらゆる言及は、対角線との共有される要素が＋1または−1であるトリビアルでない行をもつことができる、より一般的な場合をカバーすることが意図されている。
【００３６】
プリミティブ行列Pの上記の例においてα2＝1であれば（その結果、プラス1からなる対角線をもつ単位プリミティブ行列となる）、Pの逆は厳密に次のようになることがわかる。
【００３７】
【数３】
0006388924.tif 000004
一般には、単位プリミティブ行列の逆は単に、対角線上に載らないトリビアルでないα係数のそれぞれを逆にする（−1をかける）ことによって決定されることが一般に成り立つ。
【００３８】
図１のデコーダ３２において用いられる行列P0,P1,…,Pnが単位プリミティブ行列（単位対角線をもつ）であれば、行列処理動作、エンコーダ３２におけるP0,P1,…,Pnおよびデコーダ３２におけるP0,P1,…,Pnのシーケンスは、図２のＡおよびＢに示される型の有限精度回路によって実装されることができる。図２のＡは、有限精度算術を用いて実装されるプリミティブ行列を介した無損失行列処理を実行するためのエンコーダの通常の回路である。図２のＢは、有限精度算術を用いて実装されるプリミティブ行列を介した無損失行列処理を実行するためのデコーダの通常の回路である。図２のＡおよびＢの回路の典型的な実装（およびその変形）の詳細は、上述した特許文献１に記載されている。
【００３９】
図２のＡ（チャネルS1,S2,S3,S4を含む4チャネル・オーディオ・プログラムをエンコードするための回路を表わす）では、第一のプリミティブ行列P0-1（四つの0でないα係数の一つの行をもつ）は、チャネルS1の関連するサンプルをチャネルS2、S3、S4の（同じ時刻tに生起する）対応するサンプルと混合することによって、チャネルS1の各サンプルに作用する（それによりエンコードされたチャネルS1'を生成する）。第二のプリミティブ行列P1-1（やはり四つの0でないα係数の一つの行をもつ）は、チャネルS2の関連するサンプルをチャネルS1'、S3、S4の対応するサンプルと混合することによって、チャネルS2の各サンプルに作用する（それによりエンコードされたチャネルS2'の対応するサンプルを生成する）。より具体的には、チャネルS2のサンプルは、行列P0-1の係数α1（「coeff[1,2]」として同定されている）の逆を乗算され、チャネルS3のサンプルは、行列P0-1の係数α2（「coeff[1,3]」として同定されている）の逆を乗算され、チャネルS4のサンプルは、行列P0-1の係数α3（「coeff[1,4]」として同定されている）の逆を乗算され、それらの積が合計され、次いで量子化され、量子化された和が次いでチャネルS1の対応するサンプルから減算される。同様に、チャネルS1のサンプルは、行列P1-1の係数α0（「coeff[2,1]」として同定されている）の逆を乗算され、チャネルS3のサンプルは、行列P1-1の係数α2（「coeff[2,3]」として同定されている）の逆を乗算され、チャネルS4のサンプルは、行列P1-1の係数α3（「coeff[2,4]」として同定されている）の逆を乗算され、それらの積が合計され、次いで量子化され、量子化された和が次いでチャネルS2の対応するサンプルから減算される。行列P0-1の量子化段Q1は、（典型的には半端な（fractional）値である行列P0-1の0でないα係数による）乗算の積を合計する加算要素の出力を量子化して、量子化された値を生成し、該量子化された値が、チャネルS1のサンプルから減算されて、エンコードされたチャネルS1'の対応するサンプルを生成する。行列P1-1の量子化段Q2は、（典型的には半端な（fractional）値である行列P1-1の0でないα係数による）乗算の積を合計する加算要素の出力を量子化して、量子化された値を生成し、該量子化された値が、チャネルS2のサンプルから減算されて、エンコードされたチャネルS2'の対応するサンプルを生成する。（たとえばトゥルーHDエンコードを実行するための）典型的な実装では、チャネルS1、S2、S3、S4のそれぞれの各サンプルは（図２のＡに示されるように）24ビットを有し、各乗算要素の出力は（やはり図２のＡに示されるように）38ビットを有し、量子化段Q1およびQ2のそれぞれは、それに入力される各38ビット値に応答して24ビットの量子化された値を出力する。
【００４０】
むろん、チャネルS3およびS4をエンコードするために、二つの追加的なプリミティブ行列が、図２のＡに示される二つのプリミティブ行列（P0-1およびP1-1）とカスケードされることができる。
【００４１】
（図２のＡのエンコーダによって生成される4チャネルのエンコードされたプログラムのデコードのための回路を表わす）図２のＢでは、プリミティブ行列P1（四つの0でないα係数の一つの行をもち、行列P1-1の逆）は、チャネルS1'、S3、S4のサンプルをチャネルS2'の関連するサンプルと混合することによって、エンコードされたチャネルS2'の各サンプルに作用する（それによりデコードされたチャネルS2の対応するサンプルを生成する）。第二のプリミティブ行列P0（やはり四つの0でないα係数の一つの行をもち、行列P0-1の逆）は、チャネルS2、S3、S4のサンプルをチャネルS1'の関連するサンプルと混合することによって、エンコードされたチャネルS1'の各サンプルに作用する（それによりデコードされたチャネルS1の対応するサンプルを生成する）。より具体的には、チャネルS1'のサンプルは、行列P1の係数α0（「coeff[2,1]」として同定されている）を乗算され、チャネルS3のサンプルは、行列P1の係数α2（「coeff[2,3]」として同定されている）を乗算され、チャネルS4のサンプルは、行列P1の係数α3（「coeff[2,4]」として同定されている）を乗算され、それらの積が合計され、次いで量子化され、量子化された和が次いでチャネルS1'の対応するサンプルに加算される。同様に、チャネルS2'のサンプルは、行列P0の係数α1（「coeff[1,2]」として同定されている）を乗算され、チャネルS3のサンプルは、行列P0の係数α2（「coeff[1,3]」として同定されている）を乗算され、チャネルS4のサンプルは、行列P0の係数α3（「coeff[1,4]」として同定されている）を乗算され、それらの積が合計され、次いで量子化され、量子化された和が次いでチャネルS1'の対応するサンプルに加算される。行列P1の量子化段Q2は、（典型的には半端な値である行列P1の0でないα係数による）乗算の積を合計する加算要素の出力を量子化して、量子化された値を生成し、該量子化された値が、チャネルS2'のサンプルに加算されて、デコードされたチャネルS2の対応するサンプルを生成する。行列P0の量子化段Q1は、（典型的には半端な値である行列P0の0でないα係数による）乗算の積を合計する加算要素の出力を量子化して、量子化された値を生成し、該量子化された値が、チャネルS1'のサンプルに加算されて、デコードされたチャネルS1の対応するサンプルを生成する。（たとえばトゥルーHDデコードを実行するための）典型的な実装では、チャネルS1'、S2'、S3、S4のそれぞれの各サンプルは（図２のＢに示されるように）24ビットを有し、各乗算要素の出力は（やはり図２のＢに示されるように）38ビットを有し、量子化段Q1およびQ2のそれぞれは、それに入力される各38ビット値に応答して24ビットの量子化された値を出力する。
【００４２】
むろん、チャネルS3およびS4をデコードするために、二つの追加的なプリミティブ行列が、図２のＢに示される二つのプリミティブ行列（P0およびP1）とカスケードされることができる。
【００４３】
ベクトル（N個のサンプル；そのそれぞれがN個のチャネルの第一の集合の異なるチャネルのサンプルである）に対して作用するプリミティブ行列のシーケンス、たとえば図１のデコーダ３２によって実装されるプリミティブN×N行列P0,P1,…,Pnのシーケンスは、前記N個のサンプルの、N個のサンプルの新しい集合への任意の線形変換を実装することができる（たとえば、オブジェクト・ベースのオーディオ・プログラムのN個のチャネルのサンプルに、該サンプルのN個のスピーカー・フィードへのレンダリングの間に、式(1)の行列A(t)の任意のN×N実装を乗算することによって、時刻tにおいて実行される前記線形変換を実装することができる。ここで、前記変換は、ある時刻において一つのチャネルを操作することによって達成される）。こうして、N個のオーディオ・サンプルの集合に、N×Nのプリミティブ行列のシーケンスを乗算することは、N個のサンプルの前記集合が線形演算によって（N個のサンプルの）別の集合に変換されるシナリオの一般的な集合を表わす。
【００４４】
再び図１のデコーダ３２のトゥルーHD実装を参照するに、トゥルーHDにおけるデコーダ・アーキテクチャの一様性を維持するために、ダウンミックス・サブストリームの出力行列（図１におけるP02,P12）は、無損失を達成することに関連しないので可逆である（または単位対角線をもつ）必要はないのであるが、やはりプリミティブ行列として実装される。
【００４５】
トゥルーHDエンコーダおよびデコーダにおいて用いられる入力および出力行列は、実装されるべき各特定のダウンミックス指定に依存する。トゥルーHDデコーダの機能は、受領されたエンコードされたオーディオ・ビットストリームに、プリミティブ行列の適切なカスケードを適用することである。このように、図１のトゥルーHDデコーダは、（システムDによって送達される）エンコードされたビットストリームの8個のチャネルをデコードし、デコードされたビットストリームの該チャネルの部分集合に対して二つの出力プリミティブ行列P02,P12のカスケードを適用することによって、2チャネル・ダウンミックスを生成する。図１のデコーダ３２のトゥルーHD実装はまた、（システムDによって送達される）エンコードされたビットストリームの8個のチャネルをデコードして、エンコードされたビットストリームの該チャネルに対して8個の出力プリミティブ行列P0,P1,…,Pnののカスケードを適用することによって、もとの8チャネル・プログラムを無損失で復元するようにも動作可能である。
【００４６】
トゥルーHDデコーダは、再生が無損失である（またはダウンミックスの場合においてはエンコーダによって他の仕方で所望されるとおりである）かどうかを判定するために突き合わせてチェックすべき（エンコーダに入力された）もとのオーディオをもたない。しかしながら、エンコードされたビットストリームは、「検査語」（または無損失チェック）を含んでおり、再生が忠実であるかどうかを判定するために、これが、再生されたオーディオからデコーダにおいて導出される同様の語に対して比較される。
【００４７】
オブジェクト・ベースのオーディオ・プログラム（たとえば、8個より多くのチャネルを含む）が通常のトゥルーHDエンコーダによってエンコードされた場合、エンコーダは、レガシー再生装置と互換な呈示（たとえば、伝統的な7.1チャネルまたは5.1チャネルまたは他の伝統的なスピーカー・セットアップでの再生のためのダウンミックスされたスピーカー・フィードにデコードされることのできる呈示）を担持するダウンミックス・サブストリームと、トップ・サブストリーム（入力プログラムのすべてのチャネルを示す）とを生成しうる。トゥルーHDデコーダは、再生システムによる無損失レンダリングのために、もとのオブジェクト・ベースのオーディオ・プログラムを復元してもよい。この場合にエンコーダによって（すなわち、トップ・サブストリームおよび各ダウンミックス・サブストリームを生成するために）用いられる各レンダリング行列指定は、よってエンコーダによって決定される各出力行列は、プログラムのチャネルのサンプルを（たとえば7.1チャネルまたは5.1チャネル・ダウンミックスを生成するために）線形変換する時間変化するレンダリング行列A(t)であってもよい。しかしながら、そのような行列A(t)は典型的には、諸オブジェクトが空間的シーンにおいて動き回るので、時間的に素速く変化し、通常のトゥルーHDシステム（または他の通常のデコード・システム）のビットレートおよび処理の制限は典型的には、高々、そのような連続的に（かつ素速く）変化する行列指定に対する区分的に一定な近似を受け入れることができるようにシステムを制約する（エンコードされたプログラムの伝送のための増大したビットレートを代償として、より高い行列更新レートが達成される）。プログラムの諸チャネルからのコンテンツの素速く変化する混合を示すスピーカー・フィードをもつ、オブジェクト・ベースのマルチチャネル・オーディオ・プログラム（および他のマルチチャネル・オーディオ・プログラム）のレンダリングをサポートするために、発明者らは、補間された行列処理を受け入れるよう通常のシステムを向上させることが望ましいことを認識するに至った。ここで、レンダリング行列更新は頻繁ではなく、更新間の所望される軌跡（すなわち、プログラムの諸チャネルのコンテンツの混合の所望されるシーケンス）はパラメトリック的に指定される。
【先行技術文献】
【特許文献】
【００４８】
【特許文献１】PCT国際出願第PCT/US2001/028783号、国際公開第2011/119041A2号、2011年9月29日公開
【特許文献２】米国特許第6,611,212号、2003年8月26日発行、ドルビー・ラボラトリーズ・ライセンシング・コーポレイションに譲渡
【非特許文献】
【００４９】
【非特許文献１】Gerzon,  et  al.、“The  MLP  Lossless  Compression  System  for  PCM  Audio”、J.  AES,  Vol.  52,  No.  3,  pp.  243-260  (March  2004)
【発明の概要】
【課題を解決するための手段】
【００５０】
あるクラスの実施形態では、本発明は、Nチャネルのオーディオ・プログラム（たとえば、オブジェクト・ベースのオーディオ・プログラム）をエンコードする方法である。ここで、前記プログラムは、ある時間区間にわたって指定され、前記時間区間は時刻t1から時刻t2までの部分区間を含み、N個のエンコードされた信号チャネルのM個の出力チャネル（たとえば、再生スピーカー・チャネルに対応するチャネル）への時間変化する混合A(t)が前記時間区間上で指定されており、MはN以下である。本方法は、
N個のエンコードされた信号チャネルのサンプルに適用されるときにN個のエンコードされた信号チャネルのオーディオ・コンテンツのM個の出力チャネルへの第一の混合を実装するN×Nプリミティブ行列の第一のカスケードを決定する段階であって、前記第一の混合は、該第一の混合が少なくとも実質的にA(t1)に等しいという意味で時間変化する混合A(t)に整合する、段階と；
プリミティブ行列の前記第一のカスケードおよび前記部分区間上で定義される補間関数とともに、N×Nの更新されたプリミティブ行列の諸カスケードのシーケンスを示す補間値を決定する段階であって、更新されたプリミティブ行列の各カスケードは、N個のエンコードされた信号チャネルのサンプルに適用されるとき、N個のエンコードされた信号チャネルのM個の出力チャネルへの、前記部分区間における異なる時刻に関連付けられた更新された混合を実装し、それぞれの前記更新された混合は、時間変化する混合A(t)と整合する（好ましくは、前記部分区間における任意の時点t3に関連付けられた更新された混合が少なくとも実質的にA(t3)に等しいが、いくつかの実施形態では、前記部分区間における少なくとも一つの時刻に関連付けられた更新された混合とかかる時刻におけるA(t)の値との間に誤差があってもよい）、段階と；
前記エンコードされたオーディオ・コンテンツ、前記補間値およびプリミティブ行列の前記第一のカスケードを示すエンコードされたビットストリームを生成する段階とを含む。
【００５１】
いくつかの実施形態では、本方法は、プログラムのN個のチャネルのサンプルに対して行列演算を実行することによって、エンコードされたオーディオ・コンテンツを生成する段階を含む（たとえば、サンプルに行列カスケードのシーケンスを適用することによることを含む。前記シーケンスにおける各行列カスケードは、プリミティブ行列のカスケードであり、行列カスケードの前記シーケンスは、前記第一のカスケードのプリミティブ行列の逆行列のカスケードである第一の逆行列カスケードを含む）。
【００５２】
いくつかの実施形態では、各プリミティブ行列は単位プリミティブ行列である。N＝Mであるいくつかの実施形態では、本方法は、エンコードされたビットストリームを処理することによってプログラムのN個のチャネルを無損失で復元する段階をも含む。これは、前記補間値、プリミティブ行列の前記第一のカスケードおよび前記補間関数から、N×Nの更新されたプリミティブ行列の諸カスケードの前記シーケンスを決定するよう補間を実行することによることを含む。エンコードされたビットストリームは、前記補間関数を示していてもよく（すなわち、前記補間関数を示すデータを含んでいてもよく）、あるいは前記補間関数は他の仕方でデコーダに提供されてもよい。
【００５３】
M＝Nであるいくつかの実施形態では、本方法は：前記エンコードされたビットストリームを、前記補間関数を実装するよう構成されたデコーダに送達する段階と；前記デコーダにおいて前記エンコードされたビットストリームを処理して、前記プログラムのN個のチャネルを無損失で復元する段階とをも含む。これは、前記補間値、プリミティブ行列の前記第一のカスケードおよび前記補間関数から、N×Nの更新されたプリミティブ行列の諸カスケードの前記シーケンスを決定するよう補間を実行することによることを含む。
【００５４】
いくつかの実施形態では、前記プログラムは、少なくとも一つのオブジェクト・チャネルおよび少なくとも一つのオブジェクトの軌跡を示す位置データを含むオブジェクト・ベースのオーディオ・プログラムである。時間変化する混合A(t)は前記位置データから（または前記位置データを含むデータから）決定されてもよい。
【００５５】
いくつかの実施形態では、プリミティブ行列の前記第一のカスケードは、シード・プリミティブ行列であり、前記補間値は前記シード・プリミティブ行列についてのシード・デルタ行列を示す。
【００５６】
いくつかの実施形態では、前記プログラムのオーディオ・コンテンツまたはエンコードされたコンテンツの、M1個のスピーカー・チャネルへの時間変化するダウンミックスA2(t)も、前記時間区間上で指定されている。ここで、M1はM未満の整数であり、本方法は：
前記オーディオ・コンテンツまたはエンコードされたコンテンツのM1個のチャネルのサンプルに適用されるときに前記プログラムのオーディオ・コンテンツのM1個のスピーカー・チャネルへのダウンミックスを実装するM1×M1プリミティブ行列の第二のカスケードを決定する段階であって、前記ダウンミックスは、該ダウンミックスが少なくとも実質的にA2(t1)に等しいという意味で時間変化する混合A2(t)に整合する、段階と；
M1×M1プリミティブ行列の前記第二のカスケードおよび前記部分区間上で定義される第二の補間関数とともに、更新されたM1×M1プリミティブ行列の諸カスケードのシーケンスを示す追加的補間値を決定する段階であって、更新されたM1×M1プリミティブ行列の各カスケードは、前記オーディオ・コンテンツまたは前記エンコードされたコンテンツのM1個のチャネルのサンプルに適用されるとき、前記プログラムのオーディオ・コンテンツのM1個のスピーカー・チャネルへの、前記部分区間における異なる時刻に関連付けられた更新されたダウンミックスを実装し、それぞれの前記更新されたダウンミックスは、時間変化する混合A2(t)と整合し、前記エンコードされたビットストリームは前記追加的補間値およびM1×M1プリミティブ行列の前記第二のカスケードを示す、段階とを含む。前記エンコードされたビットストリームは、前記第二の補間関数を示していてもよく（すなわち、前記第二の補間関数を示すデータを含んでいてもよく）、あるいは前記第二の補間関数は他の仕方でデコーダに提供されてもよい。時間変化するダウンミックスA2(t)は、もとのプログラムのオーディオ・コンテンツの、あるいは前記エンコードされたビットストリームの前記エンコードされたオーディオ・コンテンツの、あるいは前記エンコードされたビットストリームの前記エンコードされたオーディオ・コンテンツの部分的にデコードされたバージョンの、あるいは前記プログラムのオーディオ・コンテンツを示す他の仕方でエンコードされた（たとえば部分的にデコードされた）オーディオのダウンミックスであるという意味で、前記プログラムのオーディオ・コンテンツまたはエンコードされたコンテンツのダウンミックスである。ダウンミックス指定A2(t)における時間変動は、指定されたダウンミックスのクリップ保護へのランプアップまたは該クリップ保護からのリリースに（少なくとも部分的には）起因してもよい。
【００５７】
第二のクラスの実施形態では、本発明は、マルチチャネル・オーディオ・プログラム（たとえば、オブジェクト・ベースのオーディオ・プログラム）のM個のチャネルの復元のための方法である。ここで、前記プログラムはある時間区間にわたって指定され、前記時間区間は時刻t1から時刻t2までの部分区間を含み、N個のエンコードされた信号チャネルのM個の出力チャネルへの時間変化する混合A(t)は前記時間区間上で指定されている。本方法は、
エンコードされたオーディオ・コンテンツ、補間値およびN×Nプリミティブ行列の第一のカスケードを示すエンコードされたビットストリームを取得する段階と；
前記補間値、プリミティブ行列の前記第一のカスケードおよび前記部分区間上の補間関数から、N×Nの更新されたプリミティブ行列の諸カスケードのシーケンスを決定するよう補間を実行する段階とを含む。ここで、
N×Nプリミティブ行列の前記第一のカスケードは、前記エンコードされたオーディオ・コンテンツのN個のエンコードされた信号チャネルのサンプルに適用されるときにN個のエンコードされた信号チャネルのオーディオ・コンテンツのM個の出力チャネルへの第一の混合を実装するものであり、前記第一の混合は、該第一の混合が少なくとも実質的にA(t1)に等しいという意味で時間変化する混合A(t)に整合し、
プリミティブ行列の前記第一のカスケードおよび前記補間関数とともに、前記補間値は、N×Nの更新されたプリミティブ行列の諸カスケードのシーケンスを示し、更新されたプリミティブ行列の各カスケードは、前記エンコードされたオーディオ・コンテンツのN個のエンコードされた信号チャネルのサンプルに適用されるとき、N個のエンコードされた信号チャネルのM個の出力チャネルへの、前記部分区間における異なる時刻に関連付けられた更新された混合を実装し、それぞれの前記更新された混合は、時間変化する混合A(t)と整合する（好ましくは、前記部分区間における任意の時点t3に関連付けられた更新された混合が少なくとも実質的にA(t3)に等しいが、いくつかの実施形態では、前記部分区間における少なくとも一つの時刻に関連付けられた更新された混合とかかる時刻におけるA(t)の値との間に誤差があってもよい）。
【００５８】
いくつかの実施形態では、前記エンコードされたオーディオ・コンテンツは、前記プログラムのN個のチャネルのサンプルに対して行列演算を実行することによって生成されたものである。これは、該サンプルに行列カスケードのシーケンスを適用することによることを含む。ここで、前記シーケンスにおける各行列カスケードは、プリミティブ行列のカスケードであり、行列カスケードの前記シーケンスは、前記第一のカスケードの前記プリミティブ行列の逆行列のカスケードである第一の逆行列カスケードを含む。
【００５９】
前記エンコードされたビットストリームからこれらの実施形態に従って復元された（たとえば無損失に復元された）オーディオ・プログラムのチャネルは、Xチャネル入力オーディオ・プログラム（Xは任意の整数であり、NはX未満）のオーディオ・コンテンツのダウンミックスであって、前記Xチャネルの入力オーディオ・プログラムに対して行列演算を実行し、それにより前記エンコードされたビットストリームの前記エンコードされたオーディオ・コンテンツを決定することにより前記Xチャネルの入力オーディオ・プログラムから生成されたダウンミックス、であってもよい。
【００６０】
第二のクラスのいくつかの実施形態では、各プリミティブ行列は単位プリミティブ行列である。
【００６１】
第二のクラスのいくつかの実施形態では、Nチャネル・プログラムのM1個のスピーカー・チャネルへの時間変化するダウンミックスA2(t)は前記時間区間上で指定されており、前記プログラムのオーディオ・コンテンツまたはエンコードされたオーディオ・コンテンツのM個のスピーカー・チャネルへの時間変化するダウンミックスA2(t)も前記時間区間上で指定されている。本方法は：
M1×M1プリミティブ行列の第二のカスケードおよび補間値の第二の集合を受領する段階と；
M1×M1プリミティブ行列の前記第二のカスケードを前記エンコードされたオーディオ・コンテンツのM1個のチャネルのサンプルに適用して、Nチャネル・プログラムのM1個のスピーカー・チャネルへのダウンミックスを実装する段階であって、前記ダウンミックスは、該ダウンミックスが少なくとも実質的にA2(t1)に等しいという意味で時間変化する混合A2(t)と整合する、段階と；
補間値の前記第二の集合、M1×M1プリミティブ行列の前記第二のカスケードおよび前記部分区間上で定義されている第二の補間関数を適用して、更新されたM1×M1プリミティブ行列の諸カスケードのシーケンスを得る段階と；
更新されたM1×M1プリミティブ行列を前記エンコードされたコンテンツのM1個のチャネルのサンプルに適用して、Nチャネル・プログラムの、前記部分区間における異なる時刻に関連付けられた少なくとも一つの更新されたダウンミックスを実装する段階であって、それぞれの前記更新されたダウンミックスは時間変化する混合A2(t)と整合する、段階とを含む。
【００６２】
いくつかの実施形態では、本発明は、マルチチャネル・オーディオ・プログラムをレンダリングする方法であって、シード行列集合（たとえば、オーディオ・プログラム中のある時刻に対応する単一のシード行列または少なくとも二つのシード行列の集合）をデコーダに提供する段階と、（オーディオ・プログラムの間のある時刻に関連付けられている）前記シード行列集合に対して補間を実行して、プログラムのチャネルのレンダリングにおいて使うための、補間されたレンダリング行列集合（オーディオ・プログラム中のより遅い時刻に対応する、単一の補間されたレンダリング行列または少なくとも二つの補間されたレンダリング行列の集合）を決定する段階とを含む、方法である。
【００６３】
いくつかの実施形態では、シード・プリミティブ行列およびシード・デルタ行列（または諸シード・プリミティブ行列および諸シード・デルタ行列の集合）が時折（たとえば低頻度で）デコーダに送達される。デコーダは、前記シード・プリミティブ行列およびある対応するシード・デルタ行列ならびに補間関数f(t)から、本発明のある実施形態に従って、（t1より後の時刻tについての）補間されたプリミティブ行列を生成することによって、（時刻t1に対応する）各シード・プリミティブ行列を更新する。補間関数を示すデータは、前記シード行列と一緒に送達されてもよく、あるいは補間関数はあらかじめ決定されている（すなわち、エンコーダおよびデコーダの両者によって前もって知られている）のでもよい。
【００６４】
あるいはまた、シード・プリミティブ行列（または諸シード・プリミティブ行列の集合）は、時折（たとえば低頻度で）デコーダに送達される。デコーダは、（時刻t1に対応する）各シード・プリミティブ行列を、そのシード・プリミティブ行列および補間関数f(t)から、すなわち必ずしもそのシード・プリミティブ行列に対応するシード・デルタ行列を使わずに、本発明のある実施形態に従って、（t1より後の時刻tについての）補間されたプリミティブ行列を生成することによって、更新する。補間関数を示すデータは、前記シード行列（単数または複数）と一緒に送達されてもよく、あるいは該関数はあらかじめ決定されている（すなわち、エンコーダおよびデコーダの両者によって前もって知られている）のでもよい。
【００６５】
典型的な実装では、各プリミティブ行列は単位プリミティブ行列である。この場合、プリミティブ行列の逆は単に、そのトリビアルでない係数のそれぞれ（そのα係数のそれぞれ）を逆にする（−1をかける）ことによって決定される。これは、（ビットストリームをエンコードするためにエンコーダによって適用される）プリミティブ行列の逆行列をより効率的に決定することを可能にし、エンコーダおよびデコーダにおける必要とされる行列乗算を実装するための有限精度の処理（たとえば有限精度の回路）の使用を許容する。
【００６６】
本発明の諸側面は、本発明の方法の任意の実施形態を実装するよう構成された（たとえばプログラムされた）システムまたは装置（たとえばエンコーダまたはデコーダ）、本発明の方法の任意の実施形態またはその段階によって生成されたエンコードされたオーディオ・プログラムの少なくとも一つのフレームまたは他のセグメントを（たとえば非一時的な仕方で）記憶するバッファを含むシステムまたは装置、ならびに本発明の方法の任意の実施形態またはその段階を実装するためのコードを（たとえば非一時的な仕方で）記憶するコンピュータ可読媒体（たとえばディスク）を含む。たとえば、本発明のシステムは、プログラム可能な汎用プロセッサ、デジタル信号プロセッサまたはマイクロプロセッサであって本発明の方法の実施形態またはその段階を含むデータに対する多様な動作の任意のものを実行するようソフトウェアもしくはファームウェアによってプログラムされたおよび／または他の仕方で構成されたものであるまたはそれを含むことができる。そのような汎用コンピュータは、入力装置と、メモリと、呈されたデータに応答して本発明の方法の実施形態（またはその段階）を実行するようプログラムされた（および／または他の仕方で構成された）処理回路とを含むコンピュータ・システムであってもよく、あるいはそれを含んでいてもよい。
【図面の簡単な説明】
【００６７】
【図１】エンコーダ、送達サブシステムおよびデコーダを含む通常のシステムの要素のブロック図である。
【図２】Ａは、有限精度算術をもって実装されたプリミティブ行列による無損失行列処理動作を実行するための通常のエンコーダ回路の図であり、Ｂは、有限精度算術をもって実装されたプリミティブ行列による無損失行列処理動作を実行するための通常のデコーダ回路の図である。
【図３】（有限精度算術をもって実装される）4×4プリミティブ行列をオーディオ・プログラムの四つのチャネルに適用するために本発明のある実施形態において用いられる回路のブロック図である。プリミティブ行列はシード・プリミティブ行列であり、その一つのトリビアルでない行は要素α0、α1、α2およびα3を有する。
【図４】（有限精度算術をもって実装される）3×3プリミティブ行列をオーディオ・プログラムの三つのチャネルに適用するために本発明のある実施形態において用いられる回路のブロック図である。プリミティブ行列は、一つのトリビアルでない行が要素α0、α1およびα2を有するシード・プリミティブ行列Pk(t1)および一つのトリビアルでない行が要素δ0、δ1、…、δN−1を有するシード・デルタ行列Δk(t1)ならびに補間関数f(t)から生成された、補間されたプリミティブ行列である。
【図５】本発明のエンコーダの実施形態、送達サブシステムおよび本発明のデコーダの実施形態を含む本発明のシステムのある実施形態のブロック図である。
【図６】本発明のエンコーダの実施形態、送達サブシステムおよび本発明のデコーダの実施形態を含む本発明のシステムのもう一つの実施形態のブロック図である。
【図７】補間されたプリミティブ行列（「補間された行列処理」とラベル付けされた曲線）および区分的に一定な（補間されていない）プリミティブ行列（「非補間行列処理」とラベル付けされた曲線）を使っての、種々の時点tにおける達成される仕様と真の仕様との間の平方誤差和のグラフである。
【発明を実施するための形態】
【００６８】
〈記法および命名法〉
請求項を含む本開示を通じて、信号またはデータ「に対して」動作を実行する（たとえば信号またはデータをフィルタリングする、スケーリングする、変換するまたは利得を適用する）という表現は、信号またはデータに対して直接的に、または信号またはデータの処理されたバージョンに対して（たとえば、予備的なフィルタリングまたは前処理を該動作の実行に先立って受けている前記信号のバージョンに対して）該動作を実行することを表わすために広義で使用される。
【００６９】
請求項を含む本開示を通じて、「システム」という表現は、装置、システムまたはサブシステムを表わす広義で使用される。たとえば、デコーダを実装するサブシステムは、デコーダ・システムと称されてもよく、そのようなサブシステムを含むシステム（たとえば、複数の入力に応答してY個の出力信号を生成するシステムであって、前記サブシステムが入力のうちのM個を生成し、他のY−M個の入力は外部源から受領されるもの）もデコーダ・システムと称されることがある。
【００７０】
請求項を含む本開示を通じて、用語「プロセッサ」は、データ（たとえばオーディオまたはビデオまたは他の画像データ）に対して動作を実行するよう（たとえばソフトウェアまたはファームウェアを用いて）プログラム可能または他の仕方で構成可能であるシステムまたは装置を表わす広義で使用される。プロセッサの例は、フィールド・プログラム可能なゲート・アレイ（または他の構成可能な集積回路またはチップセット）、オーディオまたは他のサウンド・データに対してパイプライン化された処理を実行するようプログラムされたおよび／または他の仕方で構成されたデジタル信号プロセッサ、プログラム可能な汎用プロセッサもしくはコンピュータおよびプログラム可能なマイクロプロセッサ・チップまたはチップセットを含む。
【００７１】
請求項を含む本開示を通じて、「メタデータ」という表現は、対応するオーディオ・データ（メタデータをも含むビットストリームのオーディオ・コンテンツ）とは別個の異なるデータを指す。メタデータは、オーディオ・データに関連付けられ、該オーディオ・データの少なくとも一つの特徴または特性（たとえばそのオーディオ・データまたはそのオーディオ・データによって示されるオブジェクトの軌跡に対してどの型（単数または複数）の処理がすでに実行されているか、あるいは実行されるべきか）を示す。メタデータのオーディオ・データとの関連付けは、時間同期的である。このように、現在の（最も最近受領または更新された）メタデータは、対応するオーディオ・データが同時的に、示される特徴をもつおよび／または示される型のオーディオ・データ処理の結果を含むことを示しうる。
【００７２】
請求項を含む本開示を通じて、「結合する」または「結合される」という用語は、直接的または間接的な接続を意味するために使われる。よって、第一の装置が第二の装置に結合するとき、その接続は、直接接続を通じてであってもよいし、他の装置および接続を介した間接的な接続を通じてであってもよい。
【００７３】
請求項を含む本開示を通じて、以下の表現は以下の定義をもつ。
【００７４】
スピーカーおよびラウドスピーカーは、任意の音を発するトランスデューサを表わすものとして同義に使われる。この定義は、複数のトランスデューサ（たとえばウーファーおよびツイーター）として実装されるラウドスピーカーを含む。
【００７５】
スピーカー・フィード：ラウドスピーカーに直接加えられるオーディオ信号または直列の増幅器およびラウドスピーカーに加えられるオーディオ信号。
【００７６】
チャネル（または「オーディオ・チャネル」）：モノフォニック・オーディオ信号。そのような信号は典型的には、該信号を所望されるまたは公称上の位置にあるラウドスピーカーに直接加えるのと等価であるようにレンダリングされることができる。所望される位置は、物理的なラウドスピーカーについて典型的にそうであるように静的であってもよく、あるいは動的であってもよい。
【００７７】
オーディオ・プログラム：一つまたは複数のオーディオ・チャネル（少なくとも一つのスピーカー・チャネルおよび／または少なくとも一つのオブジェクト・チャネル）および任意的には関連するメタデータ（たとえば、所望される空間的オーディオ呈示を記述するメタデータ）の集合。
【００７８】
スピーカー・チャネル（または「スピーカー・フィード・チャネル」）：（所望されるまたは公称上の位置にある）指定されたラウドスピーカーに関連付けられているまたは定義されたスピーカー配位内での指定されたスピーカー・ゾーンに関連付けられているオーディオ・チャネル。スピーカー・チャネルは、該オーディオ信号を（所望されるまたは公称上の位置にある）指定されたラウドスピーカーにまたは指定されたスピーカー・ゾーン内のスピーカーに直接加えるのと等価であるようにレンダリングされる。
【００７９】
オブジェクト・チャネル：オーディオ源（時にオーディオ「オブジェクト」と称される）によって発される音を示すオーディオ・チャネル。典型的には、オブジェクト・チャネルは、パラメトリックなオーディオ源記述を決定する（たとえば、パラメトリックなオーディオ源記述を示すメタデータがオブジェクト・チャネル内に含められるまたはオブジェクト・チャネルと一緒に提供される）。源記述は、（時間の関数としての）源によって発された音、時間の関数としての源の見かけの位置（たとえば、3D空間座標）および任意的には源を特徴付ける少なくとも一つの追加的パラメータ（たとえば見かけの源サイズまたは幅）を決定してもよい。
【００８０】
オブジェクト・ベースのオーディオ・プログラム：一つまたは複数のオブジェクト・チャネルの集合を（および任意的には少なくとも一つのスピーカー・チャネルも）および任意的には関連するメタデータ（たとえば、オブジェクト・チャネルによって示される音を発するオーディオ・オブジェクトの軌跡を示すメタデータ、あるいは他の仕方でオブジェクト・チャネルによって示される音の所望される空間的オーディオ呈示を示すメタデータまたはオブジェクト・チャネルによって示される音の源である少なくとも一つのオーディオ・オブジェクトの識別情報を示すメタデータ）も含むオーディオ・プログラム。
【００８１】
〈発明の実施形態の詳細な説明〉
本発明の実施形態の例は図３、図４、図５および図６を参照して記述される。
【００８２】
図５は、エンコーダ４０（本発明のエンコーダの実施形態）と、送達サブシステム４１（これは図１の送達サブシステム３１と同一であってもよい）と、デコーダ４２（本発明のデコーダの実施形態）とを図のように結合された形で含む本発明のオーディオ・データ処理システムの実施形態のブロック図である。サブシステム４２はここでは「デコーダ」と称されるが、これはデコード・サブシステム（エンコードされたマルチチャネル・オーディオ・プログラムを示すビットストリームをパースし、デコードするよう構成されている）およびデコード・サブシステムの出力のレンダリングおよび再生の少なくともいくつかのステップを実装するよう構成された他のサブシステムを含む再生システムとして実装されてもよいことは理解しておくべきである。本発明のいくつかの実施形態は、レンダリングおよび／または再生を実行するよう構成されていない（そして典型的には別個のレンダリングおよび／または再生システムと一緒に使われる）デコーダである。本発明のいくつかの実施形態は、再生システム（たとえば、デコード・サブシステムと、デコード・サブシステムの出力のレンダリングおよび再生の少なくともいくつかのステップを実装するよう構成された他のサブシステムとを含む再生システム）である。
【００８３】
図５のシステムでは、エンコーダ４０は、8チャネル・オーディオ・プログラム（たとえば伝統的な7.1スピーカー・フィードの集合）を、二つのサブストリームを含むエンコードされたビットストリームとしてエンコードするよう構成されており、デコーダ４２は、該エンコードされたビットストリームをデコードしてもとの8チャネル・プログラムを（無損失で）、あるいはもとの8チャネル・プログラムの2チャネル・ダウンミックスを、デコードするよう構成されている。エンコーダ４０は、エンコードされたビットストリームを生成し、該エンコードされたビットストリームを送達システム４１に呈するよう結合され、構成されている。
【００８４】
送達システム４１は、エンコードされたビットストリームをデコーダ４２に（たとえば記憶することおよび／または送信することによって）送達するよう結合され、構成されている。いくつかの実施形態では、システム４１は、放送システムまたはネットワーク（たとえばインターネット）を通じてデコーダ４２に、エンコードされたマルチチャネル・オーディオ・プログラムを送達することを実装する（たとえば送信する）。いくつかの実施形態では、システム４１は、エンコードされたマルチチャネル・オーディオ・プログラムを記憶媒体（たとえばディスクまたは一組のディスク）に記憶し、デコーダ４２は該記憶媒体からプログラムを読むよう構成される。
【００８５】
エンコーダ４０において「InvChAssign1」とラベル付けされたブロックは、入力プログラムのチャネルに対するチャネル入れ替え（置換行列による乗算と等価）を実行するよう構成される。置換された行列は次いで段４３においてエンコードを受け、段４３は八つのエンコードされた信号チャネルを出力する。エンコードされた信号チャネルは、再生スピーカー・チャネルに対応してもよい（だが必須ではない）。エンコードされた信号チャネルは時に、「内部」チャネルと称される。デコーダ（および／またはレンダリング・システム）は典型的にはエンコードされた信号チャネルのコンテンツをデコードし、レンダリングして入力オーディオを復元し、よってエンコードされた信号チャネルはエンコード／デコード・システムの「内部」だからである。段４３において実行されるエンコードは、置換されたチャネルのサンプルの各集合にエンコード行列（Pn-1,…、P1-1,P0-1として特定される行列乗算のカスケードとして実装される）を乗算することと等価である。
【００８６】
nはこの例示的実施形態においては7に等しくてもよいが、本実施形態およびそれに対する変形において、入力オーディオ・プログラムは任意の数（NまたはX）のチャネルを含む。ここで、N（またはX）は1より大きな任意の整数である。図５のnはn＝N−1（あるいは、n＝X−1または他の値）であってもよい。そのような代替的な実施形態では、エンコーダは、マルチチャネル・オーディオ・プログラムを、何らかの数のサブストリームを含むエンコードされたビットストリームとしてエンコードするよう構成され、デコーダは、エンコードされたビットストリームをデコードして、もとのマルチチャネル・プログラムを（無損失で）またはもとのマルチチャネル・プログラムの一つまたは複数のダウンミックスをレンダリングするよう構成される。たとえば、そのような代替的な実施形態のエンコード段（段４３に対応）は、プログラムのチャネルのサンプルに対してN×Nプリミティブ行列のカスケードを適用し、M個の出力チャネルの第一の混合に変換されることができるN個のエンコードされた信号チャネルを生成してもよい。ここで、前記第一の混合は、該第一の混合が少なくとも実質的にA(t1)に等しいという意味で、ある区間で指定された時間変化する混合A(t)に整合する。ここで、t1は該区間内のある時刻である。デコーダは、エンコードされたオーディオ・コンテンツの一部として受領されたN×Nプリミティブ行列のカスケードを適用することによって前記M個の出力チャネルを生成してもよい。そのような代替的な実施形態におけるエンコーダは、M1×M1プリミティブ行列（M1はN未満の整数）の第二のカスケードをも生成してもよく、該第二のカスケードも前記エンコードされたオーディオ・コンテンツに含められてもよい。デコーダは、第二のカスケードをM1個のエンコードされた信号チャネルに対して適用して、Nチャネル・プログラムのM1個のスピーカー・チャネルへのダウンミックスを実装してもよい。ここで、ダウンミックスは、該ダウンミックスが少なくとも実質的にA2(t1)に等しいという意味で、別の時間変化する混合A2(t)と整合する。そのような代替的な実施形態におけるエンコーダは、（本発明の任意の実施形態に従って）補間値をも生成し、該補間値を、当該エンコーダから出力される前記エンコードされたビットストリームに含める。時間変化する混合A(t)に従って前記エンコードされたビットストリームのコンテンツをデコードおよびレンダリングするためおよび／または時間変化する混合A2(t)に従って前記エンコードされたビットストリームのコンテンツのダウンミックスをデコードおよびレンダリングするためのデコーダによる使用のためである。
【００８７】
図５の記述は時に、本発明のエンコーダに入力されるマルチチャネル信号を、具体性のために、8チャネル入力信号と称するが、該記述は（当業者に明白なトリビアルな変形ともども）、8チャネル入力信号への言及をNチャネル入力信号への言及で置換し、8チャネル（または2チャネル）プリミティブ行列のカスケードへの言及をMチャネル（またはM1チャネル）プリミティブ行列への言及で置換し、8チャネル入力信号の無損失復元への言及をMチャネル・オーディオ信号の無損失復元への言及で置換することによって、一般的な場合にも当てはまる。（ここで、Mチャネル・オーディオ信号は、Nチャネル入力オーディオ信号に時間変化する混合A(t)を適用してM個のエンコードされた信号チャネルを決定する行列演算を実行することによって決定されたものである。）
図５のエンコーダ段４３を参照するに、各行列Pn-1,…,P1-1およびP0-1は（よって段４３によって適用されるカスケードは）、前記時間区間上で指定されている、プログラムのN（N＝8）個のチャネルのN個のエンコードされた信号チャネルへの指定された時間変化する混合に従って、サブシステム４４において決定され、時折（典型的には低頻度で）更新される。
【００８８】
行列決定サブシステム４４は、出力行列の二つの集合（エンコードされたチャネルの二つのサブストリームのそれぞれに対応して一つの集合）の係数を示すデータを生成するよう構成される。出力行列の各集合は時折更新され、よって係数も時折更新される。出力行列の一方の集合は二つのレンダリング行列P02(t),P12(t)からなり、このそれぞれは次元2×2のプリミティブ行列（好ましくは単位プリミティブ行列）であり、エンコードされたビットストリームのエンコードされたオーディオ・チャネルのうちの二つを含む第一のサブストリーム（ダウンミックス・サブストリーム）をレンダリング（して前記8チャネル入力オーディオの2チャネル・ダウンミックスをレンダリング）するためである。出力行列の他方の集合は八個のレンダリング行列P0(t),P1(t),…,Pn(t)からなり、このそれぞれは次元8×8のプリミティブ行列（好ましくは単位プリミティブ行列）であり、エンコードされたビットストリームのエンコードされたオーディオ・チャネルの八個全部を含む第二のサブストリームをレンダリング（して前記8チャネル入力オーディオ・プログラムを無損失復元）するためである。各時刻tについて、レンダリング行列P02(t),P12(t)のカスケードは、前記第一のサブストリームにおける二つのエンコードされた信号チャネルから前記2チャネル・ダウンミックスをレンダリングする前記第一のサブストリームのチャネルのためのレンダリング行列として解釈されることができる。同様にレンダリング行列P0(t),P1(t),…,Pn(t)のカスケードは、前記第二のサブストリームのチャネルのためのレンダリング行列として解釈されることができる。
【００８９】
サブシステム４４からパッキング・サブシステム４５に出力される（各レンダリング行列の）係数は、プログラムのチャネルの対応する混合に含められるべき各チャネルの相対または絶対利得を示すメタデータである。（プログラムの間のある時点についての）各レンダリング行列の係数は、混合の各チャネルが、特定の再生システム・スピーカーのためのスピーカー・フィードによって示される（レンダリングされた混合の対応する時点における）オーディオ・コンテンツの混合にどのくらい寄与するべきかを表わす。
【００９０】
（エンコード段４３から出力される）8個のエンコードされたオーディオ・チャネル、（サブシステム４４によって生成される）出力行列係数および典型的にはまた追加的データが、パッキング・サブシステム４５に呈される。パッキング・サブシステム４５は、それらをエンコードされたビットストリームにまとめ、該ビットストリームがその後送達システム４１に呈される。
【００９１】
エンコードされたビットストリームは、8個のエンコードされたオーディオ・チャネル、時間変化する出力行列の前記二つの集合（エンコードされたチャネルの二つのサブストリームのそれぞれに対応して一つの集合）および典型的にはまた追加的なデータ（たとえばオーディオ・コンテンツに関するメタデータ）を示すデータを含む。
【００９２】
動作では、エンコーダ４０（および本発明のエンコーダの代替的実施形態、たとえば図６のエンコーダ１００）は、ある時間区間に対応するサンプルをもつNチャネル・オーディオ・プログラムをエンコードする。該時間区間は、時刻t1からt2の部分区間を含む。N個のエンコードされた信号チャネルのM個の出力チャネルへの時間変化する混合A(t)が前記時間区間上で指定されているとき、エンコーダは、
N個のエンコードされた信号チャネルのサンプルに適用されるときにN個のエンコードされた信号チャネルのオーディオ・コンテンツのM個の出力チャネルへの第一の混合を実装するN×Nプリミティブ行列（たとえば時刻t1について行列P0(t1),P1(t1),…,Pn(t1)）の第一のカスケードを決定する段階であって、前記第一の混合は、該第一の混合が少なくとも実質的にA(t1)に等しいという意味で時間変化する混合A(t)に整合する、段階と；
前記プログラムのN個のチャネルのサンプルに対して行列演算を実行することによって、エンコードされたオーディオ・コンテンツ（たとえば、エンコーダ４０の段４３の出力またはエンコーダ１００の段１０３の出力）を生成する段階であって、該サンプルに行列カスケードのシーケンスを適用することによることを含み、前記シーケンスにおける各行列カスケードは、プリミティブ行列のカスケードであり、行列カスケードの前記シーケンスは、前記第一のカスケードの前記プリミティブ行列の逆行列のカスケードである第一の逆行列カスケードを含む、段階と；
（たとえば段４４または段１０３の出力に含まれる）プリミティブ行列の前記第一のカスケードおよび前記部分区間上で定義される補間関数とともに、N×Nの更新されたプリミティブ行列の諸カスケードのシーケンスを示す補間値（たとえばエンコーダ４０の段４４の出力またはエンコーダ１００の段１０３の出力に含まれる補間値）を決定する段階であって、更新されたプリミティブ行列の各カスケードは、N個のエンコードされた信号チャネルのサンプルに適用されるとき、N個のエンコードされた信号チャネルのM個の出力チャネルへの、前記部分区間における異なる時刻に関連付けられた更新された混合を実装し、それぞれの前記更新された混合は、時間変化する混合A(t)と整合する。（すべての実施形態において）必ずではないが好ましくは、各更新された混合は、前記部分区間における任意の時刻t3に関連付けられた更新された混合が少なくとも実質的にA(t3)に等しいという意味で、時間変化する混合と整合する、段階と；
前記エンコードされたオーディオ・コンテンツ、前記補間値およびプリミティブ行列の前記第一のカスケードを示すエンコードされたビットストリーム（たとえばエンコーダ４０の段４５の出力またはエンコーダ１００の段１０４の出力）を生成する段階とを実行する。
【００９３】
図５の段４４を参照するに、出力行列の各集合（集合P02,P12または集合P0,P1,…,Pn）は時折更新される。（第一の時刻t1において）出力される行列の第一の集合P02,P12は、プログラムの間の第一の時刻において（すなわち該第一の時刻に対応する、段４３のエンコードされた出力の二つのチャネルのサンプルに対して）実行されるべき線形変換を決定するシード行列（単位プリミティブ行列のカスケードとして実装される）である。（第一の時刻t1において）出力される行列の第一の集合P0,P1,…,Pnも、プログラムの間の第一の時刻において（すなわち該第一の時刻に対応する、段４３のエンコードされた出力の八つすべてのチャネルのサンプルに対して）実行されるべき線形変換を決定するシード行列（単位プリミティブ行列のカスケードとして実装される）である。段４４から出力される行列P02,P12の各更新された集合は、プログラムの間の更新時刻において（すなわち該更新時刻に対応する、段４３のエンコードされた出力の二つのチャネルのサンプルに対して）実行されるべき線形変換を決定する更新されたシード行列（単位シード・プリミティブ行列のカスケードと称されてもよい、単位プリミティブ行列のカスケードとして実装される）である。段４３から出力される行列P0,P1,…,Pnの各更新された集合も、プログラムの間の更新時刻において（すなわち前記第一の時刻に対応する、段４３のエンコードされた出力の八つすべてのチャネルのサンプルに対して）実行されるべき線形変換を決定するシード行列（単位シード・プリミティブ行列のカスケードと称されてもよい、単位プリミティブ行列のカスケードとして実装される）である。
【００９４】
出力段４４は、補間値をも出力する。該補間値は、（各シード行列についての補間関数とともに）デコーダ４２が（第一の時刻t1よりあとで更新時刻の間の諸時刻に対応する）諸シード行列の補間されたバージョンを生成できるようにする。補間値（これは各補間関数を示すデータを含んでいてもよい）は、段４５によって、エンコーダ４０から出力されるエンコードされたビットストリームに含められる。そのような補間値の例は後述する（補間値は、各シード行列についてのデルタ行列を含んでいてもよい）。
【００９５】
図５のデコーダ４２を参照するに、（デコーダ４２の）パース・サブシステム４６は、送達システム４１から、エンコードされたビットストリームを受け入れ（読み取りまたは受領し）、該エンコードされたビットストリームをパースする。サブシステム４６は、エンコードされたビットストリームのサブストリーム（エンコードされたビットストリームの二つのエンコードされたチャネルのみを含む「第一の」サブストリームを含む）および前記第一のサブストリームに対応する出力行列（P02,P12）を行列乗算段４８（その処理の結果、もとの8チャネル入力プログラムのコンテンツの2チャネル・ダウンミックス呈示が生じる）に呈するよう動作可能である。サブシステム４６はまた、エンコードされたビットストリームのサブストリーム（エンコードされたビットストリームの8個全部のエンコードされたチャネルを含む「第二の」サブストリーム）および対応する出力行列（P0,P1,…,Pn）を行列乗算段４７に呈するようにも動作可能である。行列乗算段４７の処理の結果、もとの8チャネル・プログラムが無損失再現される。
【００９６】
パース・サブシステム４６（および図６のパース・サブシステム１０６）は、追加的な無損失エンコードおよびデコード・ツール（たとえば、LPC符号化、ハフマン符号化など）を含んでいてもよい（および／または実装していてもよい）。
【００９７】
補間段６０は、エンコードされたビットストリームに含まれている、前記第二のサブストリームについての各シード行列（すなわち、時刻t1についてのプリミティブ行列の初期集合P0,P1,…,Pnおよびプリミティブ行列P0,P1,…,Pnの各更新された集合）と、（やはりエンコードされたビットストリームに含まれている）前記補間値とを受領するよう結合される。各シード行列の補間されたバージョンを生成するためである。段６０は、そのような各シード行列を（段４７に）素通しにしそのような各シード行列の補間されたバージョンを生成（して段４７に呈）するよう結合され、構成される。（それぞれの補間されたバージョンは、第一の時刻t1よりあとでありかつ最初のシード行列更新時刻より前の、あるいはその後のシード行列更新時刻の間の時刻に対応する。）
補間段６１は、エンコードされたビットストリームに含まれている、前記第一のサブストリームについての各シード行列（すなわち、時刻t1についてのプリミティブ行列の初期集合P02,P12およびプリミティブ行列P02,P12の各更新された集合）と、（やはりエンコードされたビットストリームに含まれている）前記補間値とを受領するよう結合される。各シード行列の補間されたバージョンを生成するためである。段６１は、そのような各シード行列を（段４８に）素通しにしそのような各シード行列の補間されたバージョンを生成（して段４８に呈）するよう結合され、構成される。（それぞれの補間されたバージョンは、第一の時刻t1よりあとでありかつ最初のシード行列更新時刻より前の、あるいはその後のシード行列更新時刻の間の時刻に対応する。）
段４８は、第一のサブストリームのチャネルに対応する（エンコードされたビットストリームの）二つのチャネルの二つのオーディオ・サンプルに、行列P02,P12の最も最近に更新されたカスケード（たとえば、段６１によって生成された行列P02,P12の最も最近に補間されたバージョンのカスケード）を乗算し、二つの線形変換されたサンプルの、結果として得られる各集合は「ChAssign0」とタイトル付けされたブロックによって表わされるチャネル置換（置換行列による乗算と等価）を受け、8個のもとのオーディオ・チャネルの、要求される2チャネル・ダウンミックスのサンプルの各対を与える。エンコーダ４０およびデコーダ４２において実行される行列処理動作のカスケードは、8個の入力オーディオ・チャネルを2チャネル・ダウンミックスに変換するダウンミックス行列指定の適用と等価である。
【００９８】
段４７は、8個のオーディオ・サンプルの各ベクトル（エンコードされたビットストリームの8個のチャネルのフル集合のそれぞれから一つ）に行列P0,P1,…,Pnの最も最近に更新されたカスケード（たとえば、段６０によって生成された行列P0,P1,…,Pnの最も最近に補間されたバージョンのカスケード）を乗算し、8個の線形変換されたサンプルの、結果として得られる各集合は「ChAssign1」とラベル付けされたブロックによって表わされるチャネル置換（置換行列による乗算と等価）を受け、無損失復元されたもとの8チャネル・プログラムの8個のサンプルの各集合を与える。（本システムの「無損失」特性を達成するよう）出力8チャネル・オーディオが厳密に入力8チャネル・オーディオと同じであるためには、エンコーダ４０において実行される行列処理動作は、（量子化効果を含め）厳密に、エンコードされたビットストリームの前記第二のサブストリームに対してデコーダ４２において実行される行列処理動作（すなわち、デコーダ４２の段４７における行列P0,P1,…,Pnのカスケードの各乗算）の逆であるべきである。こうして、図５では、エンコーダ４０の段４３における行列処理動作は、行列P0,P1,…,Pnの逆行列の、デコーダ４２の段４７において適用される反対シーケンスでのカスケード、すなわちPn-1,…、P1-1,P0-1として特定される。
【００９９】
このように、段４７は、（置換段ChAssign1とともに）補間段６０から出力されるプリミティブ行列の各カスケードを、エンコードされたビットストリームから抽出されたエンコードされたオーディオ・コンテンツに逐次的に適用して、エンコーダ４０によってエンコードされたマルチチャネル・オーディオ・プログラムの少なくともあるセグメントのN個のチャネルを無損失に復元するよう結合され、構成された行列乗算サブシステムである。
【０１００】
デコーダ４２の置換段ChAssign1は、段４７の出力に、デコーダ４０によって適用されたチャネル置換の逆を適用する（すなわち、デコーダ４２の段「ChAssign1」によって表わされる置換行列は、エンコーダ４０の要素「InvChAssign1」によって表わされるものの逆である）。
【０１０１】
図５に示されるシステムのサブシステム４０および４２の変形において、要素の一つまたは複数が省略されるまたは追加的なオーディオ・データ処理ユニットが含められる。
【０１０２】
デコーダ４２の記述される実施形態の変形では、本発明のデコーダは、N個のエンコードされた信号チャネルを示すエンコードされたビットストリームからの、エンコードされたオーディオ・コンテンツのNチャネルの無損失復元を実行するよう構成される。ここで、オーディオ・コンテンツの前記Nチャネル自身が、Xチャネル入力オーディオ・プログラム（Xは任意の整数であり、NはX未満）のオーディオ・コンテンツのダウンミックスであって、前記Xチャネルの入力オーディオ・プログラムに対して時間変化する混合を適用するよう前記Xチャネル入力オーディオ・プログラムに対して行列演算を実行し、それにより前記エンコードされたビットストリームのエンコードされたオーディオ・コンテンツの前記Nチャネルを決定することにより生成されたものである。そのような変形では、デコーダは、エンコードされたビットストリームと一緒に提供される（たとえばエンコードされたビットストリームに含まれる）プリミティブN×N行列に対して補間を実行する。
【０１０３】
あるクラスの実施形態では、本発明は、マルチチャネル・オーディオ・プログラムをレンダリングする方法であって、（たとえば前記プログラムのコンテンツのダウンミックスを生成するよう）前記プログラムのチャネルのサンプルに対して線形変換（行列乗算）を実行することによることを含む。前記線形変換は、前記プログラムの間のある時点において（すなわち、その時刻に対応するチャネルのサンプルに対して）実行されるべき線形変換が、前記プログラムの間の別の時点において実行されるべき線形変換と異なるという意味で時間独立である。いくつかの実施形態では、本方法は、前記プログラムの間の第一の時刻において（すなわち、該第一の時刻に対応するチャネルのサンプルに対して）実行されるべき線形変換を決定する少なくとも一つのシード行列（これは単位プリミティブ行列のカスケードとして実装されてもよい）を用い、前記プログラムの間の第二の時刻において実行されるべき線形変換を決定する前記シード行列の少なくとも一つの補間されたバージョンを決定するよう補間を実装する。典型的な実施形態では、本方法は、再生システムに含まれるまたは再生システムに関連付けられているデコーダ（たとえば図５のデコーダ４０または図６のデコーダ１０２）によって実行される。典型的には、デコーダは、前記プログラムを示すエンコードされたオーディオ・ビットストリームのオーディオ・コンテンツの無損失の復元を実行するよう構成され、前記シード行列（および前記シード行列の各補間されたバージョン）は、プリミティブ行列（たとえば単位プリミティブ行列）のカスケードとして実装される。
【０１０４】
典型的には、レンダリング行列更新（前記シード行列の更新）は低頻度で起こる（たとえば、前記シード行列の更新されたバージョンのシーケンスは、デコーダに送達されるエンコードされたオーディオ・ビットストリームに含められるが、そのような更新されたバージョンの相続くものに対応する当該プログラムのセグメントの間には長い時間区間がある）。シード行列更新間の所望されるレンダリング軌跡（たとえば、当該プログラムのチャネルのコンテンツの混合の所望されるシーケンス）は、パラメトリックに（たとえばデコーダに送達されるエンコードされたオーディオ・ビットストリームに含まれるメタデータによって）指定される。
【０１０５】
（更新されたシード行列のシーケンスの）各シード行列は、A(tj)、あるいはプリミティブ行列であればPk(tj)と記される。ここで、tjはそのシード行列に対応する（プログラム中の）時刻（すなわち、j番目のシード行列に対応する時刻）である。シード行列がプリミティブ行列Pk(tj)のカスケードとして実装される場合には、インデックスkが各プリミティブ行列の前記カスケードにおける位置を示す。典型的には、プリミティブ行列のカスケードにおけるk番目の行列Pk(tj)はk番目のチャネルに作用する。
【０１０６】
線形変換（たとえばダウンミックス指定）A(t)が素速く変化するときは、エンコーダ（たとえば通常のエンコーダ）は、A(t)の密接な近似を達成するために、更新されたシード行列を頻繁に送信する必要があろう。
【０１０７】
同じチャネルkに対して、ただし異なる時点t1,t2,t3,…に作用するプリミティブ行列Pk(t1)、Pk(t2)、Pk(t3)、…のシーケンスを考える。これらの各時点において更新されたプリミティブ行列を送るのではなく、ある実施形態の本発明の方法は、t1においてシード・プリミティブ行列Pk(t1)と、行列係数の変化のレートを定義するシード・デルタ行列Δk(t1)を送る（すなわち、時刻t1に対応する位置において、エンコードされたビットストリーム中に含める）。たとえば、シード・プリミティブ行列およびシード・デルタ行列は次の形をもつ。
【０１０８】
【数４】
0006388924.tif 000005
Pk(t1)はプリミティブ行列なので、それは一つの（トリビアルでない）行（すなわち、この例では要素α0,α1,α2,…,αN-1）を除いて次元N×Nの恒等行列と同一である。この例では、行列Δk(t1)は、一つの（トリビアルでない）行（すなわち、この例では要素δ0,δ1,…,δN-1）を除いて0を有する。要素αkは、要素α0,α1,α2,…,αN-1のうちPk(t1)の対角線上に生起するものを表わし、要素δkは要素δ0,δ1,…,δN-1のうちΔk(t1)の対角線上に生起するものを表わす。
【０１０９】
このように、（時刻t1よりあとに生起する）時点tにおけるプリミティブ行列は、（たとえばデコーダ４２の段６０もしくは６１またはデコーダ１０２の段１１０、１１１、１１２もしくは１１３によって）
Pk(t)＝Pk(t1)＋f(t)Δk(t1)
として補間される。ここで、f(t)は時刻tについての補間因子であり、f(t1)＝0である。たとえば、線形補間が所望されるならば、aが定数であるとして、関数f(t)はf(t)＝a*(t−t1)の形であってもよい。補間がデコーダにおいて実装される場合には、デコーダは、関数f(t)を知るよう構成される必要がある。たとえば、関数f(t)を決定するメタデータが、デコードされ、レンダリングされるべきエンコードされたオーディオ・ビットストリームと一緒に、デコーダに送達されてもよい。
【０１１０】
上記はプリミティブ行列の補間の一般的な場合を記述しているが、要素αkが1に等しい場合には、Pk(t1)は、無損失の逆計算になじみやすい単位プリミティブ行列である。しかしながら、各時点における無損失性を維持するために、δk＝0とも設定する必要がある。それにより各時点でのプリミティブ行列は無損失の逆計算になじみやすくなる。
【０１１１】
Pk(t)x(t)＝Pk(t1)x(t)＋f(t)(Δk(t1)x(t))であることを注意しておく。このように、各時点tにおいてシード・プリミティブ行列を更新するのではなく、等価に、二つの中間的な組のチャネルPk(t1)x(t)およびΔk(t1)x(t)を計算してそれらを補間因子f(t)を用いて組み合わせることができる。このアプローチは、典型的には、各デルタ係数が補間因子を乗算される必要のある、各時点においてプリミティブ行列を更新するアプローチに比べて、計算コストが低い。
【０１１２】
さらにもう一つの等価なアプローチは、f(t)を整数rと端数f(t)−rに分割し、次いで補間されたプリミティブ行列の、必要とされる適用を、
Pk(t)x(t)＝（Pk(t1)＋rΔk(t1)）x(t)＋(f(t)−r)（Δk(t1)x(t)）      (2)
として達成することである。（式(2)を使う）このアプローチは、このように、先に論じた二つのアプローチの混合になるる。
【０１１３】
トゥルーHDでは、0.833ms（48kHzで40サンプル）ぶんのオーディオがアクセス単位として定義される。デルタ行列Δkがアクセス単位当たりのプリミティブ行列Pkの変化のレートとして定義され、Tがアクセス単位の長さであるとしてf(t)＝(t−t1)/Tと定義する場合、式(2)のrはアクセス単位毎に1増大し、f(t)−rは単にアクセス単位内でのサンプルのオフセットの関数である。このように、端数値f(t)−rは必ずしも計算される必要はなく、アクセス単位内のオフセットによってインデックスされるルックアップテーブルから簡単に導出できる。各アクセス単位の末尾において、Pk(t1)＋rΔk(t1)がΔk(t1)の加算によって更新される。一般に、Tはアクセス単位に対応する必要はなく、その代わり、当該信号の任意の固定されたセグメンテーションであってもよい。たとえば、8サンプル長のブロックであることができる。
【０１１４】
近似ではあるがさらなる単純化は、端数部分f(t)−rを完全に無視し、定期的にPk(t1)＋rΔk(t1)を更新することであろう。これは本質的には、区分的に一定の行列更新を与えるが、プリミティブ行列を頻繁に伝送する必要がない。
【０１１５】
図３は、オーディオ・プログラムの四つのチャネルに（有限精度算術を用いて実装される）4×4プリミティブ行列を適用するための本発明のある実施形態において用いられる回路のブロック図である。プリミティブ行列は、シード・プリミティブ行列であり、その一つのトリビアルでない行は要素α0,α1,α2,α3を含む。それぞれが四つのチャネルの異なるもののサンプルを変換するためである四つのそのようなプリミティブ行列がカスケードされて、四つすべてのチャネルのサンプルを変換することが考えられている。そのような回路は、それらのプリミティブ行列がまず補間を介して更新され、更新されたプリミティブ行列がオーディオ・データに対して適用されるときに使われることができる。
【０１１６】
図４は、オーディオ・プログラムの三つのチャネルに（有限精度算術を用いて実装される）3×3プリミティブ行列を適用するための本発明のある実施形態において用いられる回路のブロック図である。プリミティブ行列は、補間されたプリミティブ行列であり、これは、その一つのトリビアルでない行が要素α0,α1,α2を含むシード・プリミティブ行列Pk(t1)と、その一つのトリビアルでない行が要素δ0,δ1,δ2を含むシード・デルタ行列Δk(t1)と、補間関数f(t)とから本発明のある実施形態に基づいて生成される。このように、（時刻t1よりあとに生起する）時点tにおけるプリミティブ行列は、Pk(t)＝Pk(t1)＋f(t)Δk(t1)として補間される。ここで、f(t)は時刻tについての補間因子（補間関数f(t)の時刻tにおける値）であり、f(t1)＝0である。それぞれが三つのチャネルの異なるもののサンプルを変換するためである三つのそのようなプリミティブ行列がカスケードされて、三つすべてのチャネルのサンプルを変換することが考えられている。そのような回路は、シードまたは部分的に更新されたプリミティブ行列がオーディオ・データに対して適用され、デルタ行列がオーディオ・データに対して適用され、両者が補間因子を使って一緒に組み合わされるときに使われることができる。
【０１１７】
図３の回路は、シード・プリミティブ行列を四つのオーディオ・プログラム・チャネルS1、S2、S3、S4に適用する（すなわち、それらのチャネルのサンプルに該行列を乗算する）よう構成される。より具体的には、チャネルS1のサンプルは行列の係数α0（「m_coeff[p,0]」として同定される）を乗算され、チャネルS2のサンプルは行列の係数α1（「m_coeff[p,1]」として同定される）を乗算され、チャネルS3のサンプルは行列の係数α2（「m_coeff[p,2]」として同定される）を乗算され、チャネルS4のサンプルは行列の係数α3（「m_coeff[p,3]」として同定される）を乗算される。これらの積は加算要素１０において加算され、要素１０から出力される各和が次いで量子化段Qssにおいて量子化されて、量子化された値を生成する。これがチャネルS2のサンプルの変換されたバージョン（チャネルS2'に含められる）である。典型的な実装では、チャネルS1、S2、S3、S4の各チャネルの各サンプルは（図３に示されるように）24ビットを有し、各乗算要素の出力は（やはり図３に示されるように）38ビットを有し、量子化段Qssは、それに入力される各38ビット値に応答して24ビットの量子化された値を出力する。
【０１１８】
図４の回路は、補間されたプリミティブ行列を三つのオーディオ・プログラム・チャネルC1、C2、C3に適用する（すなわち、それらのチャネルのサンプルに該行列を乗算する）よう構成される。より具体的には、チャネルC1のサンプルはシード・プリミティブ行列の係数α0（「m_coeff[p,0]」として同定される）を乗算され、チャネルC2のサンプルはシード・プリミティブ行列の係数α1（「m_coeff[p,1]」として同定される）を乗算され、チャネルC3のサンプルはシード・プリミティブ行列の係数α2（「m_coeff[p,2]」として同定される）を乗算される。これらの積は加算要素１２において加算され、要素１２から出力される各和が次いで、補間因子段１３から出力される対応する値に（段１４において）加えられる。段１４から出力される値は、量子化段Qssにおいて量子化されて、量子化された値を生成する。これがチャネルC3のサンプルの変換されたバージョン（チャネルC3'に含められる）である。
【０１１９】
チャネルC1の同じサンプルは、シード・デルタ行列の係数δ0（「delta_cf[p,0]」として同定される）を乗算され、チャネルC2のサンプルは、シード・デルタ行列の係数δ1（「delta_cf[p,1]」として同定される）を乗算され、チャネルS3のサンプルは、シード・デルタ行列の係数δ２（「delta_cf[p,2]」として同定される）を乗算される。これらの積は加算要素１１において加算され、要素１１から出力される各和が次いで、量子化段Qfineにおいて量子化されて、量子化された値を生成する。これが補間関数f(t)の現在の値を（補間因子段１３において）乗算される。
【０１２０】
図４の典型的な実装では、チャネルC1、C2、C3の各チャネルの各サンプルは（図４に示されるように）32ビットを有し、各加算要素１１、１２、１４の出力は（やはり図４に示されるように）50ビットを有し、量子化段Qfine、Qssは、それに入力される各50ビット値に応答して32ビットの量子化された値を出力する。
【０１２１】
たとえば、図４の回路のある変形は、x＝2,4,8またはNチャネルであるとして、x個のオーディオ・チャネルのベクトルを変換することができる。図４の回路に対するx個のそのような変形のカスケードが、そのようなx個のチャネルへのx×xシード行列（またはそのようなシード行列の補間されたバージョン）の行列乗算を実行することができる。たとえば、図４の回路に対するx個のそのような変形のそのようなカスケードは、デコーダ４２の段６０および４７（ここではx＝8）またはデコーダ４２の段６１および４８（ここではx＝2）またはデコーダ１０２の段１１３および１０９（ここではx＝N）またはデコーダ１０２の段１１２および１０８（ここではx＝8）またはデコーダ１０２の段１１１および１０７（ここではx＝6）またはデコーダ１０２の段１１０および１０６（ここではx＝2）を実装することができる。
【０１２２】
図４の実施形態では、シード・プリミティブ行列およびシード・デルタ行列は並列に入力サンプルの各集合（ベクトル）に適用される（そのような各ベクトルは各入力サンプルから一つのサンプルを含む）。
【０１２３】
図６を参照するに、次に、デコードされるべきオーディオ・プログラムがNチャネル・オブジェクト・ベース・オーディオ・プログラムである本発明の実施形態を記述する。図６のシステムは、エンコーダ１００（本発明のエンコーダの実施形態）と、送達サブシステム３１と、デコーダ１０２（本発明のデコーダの実施形態）とが図のように結合されたものを含む。サブシステム１０２は本稿では「デコーダ」と称されるが、これはデコード・サブシステム（エンコードされたマルチチャネル・オーディオ・プログラムを示すビットストリームをパースし、デコードするよう構成されている）と、該デコード・サブシステムの出力のレンダリングおよび再生の少なくともいくつかの段階を実装するよう構成されている他のサブシステムとを含む再生システムとして実装されてもよいことは理解しておくべきである。本発明のいくつかの実施形態は、レンダリングおよび／または再生を実行するよう構成されていない（そして典型的には別個のレンダリングおよび／または再生システムと一緒に使われる）デコーダである。本発明のいくつかの実施形態は、再生システムである（たとえば、デコード・サブシステムと、該デコード・サブシステムの出力のレンダリングおよび再生の少なくともいくつかの段階を実装するよう構成されている他のサブシステムとを含む再生システム）。
【０１２４】
図６のシステムでは、エンコーダ１００は、Nチャネルのオブジェクト・ベースのオーディオ・プログラムを、四つのサブストリームを含むエンコードされたビットストリームとしてエンコードするよう構成されており、デコーダ１０２は、該エンコードされたビットストリームをデコードして、もとのNチャネル・プログラムを（無損失に）、あるいはもとのNチャネル・プログラムの8チャネル・ダウンミックスを、あるいはもとのNチャネル・プログラムの6チャネル・ダウンミックスを、あるいはもとのNチャネル・プログラムの2チャネル・ダウンミックスをレンダリングするよう構成されている。エンコーダ１００は、前記エンコードされたビットストリームを生成し、該エンコードされたビットストリームを送達システム３１に呈するよう結合され、構成されている。
【０１２５】
送達システム３１は、前記エンコードされたビットストリームをデコーダ１０２に（たとえば記憶することおよび／または送信することによって）送達するよう結合され、構成されている。いくつかの実施形態では、システム３１は、放送システムまたはネットワーク（たとえばインターネット）を通じてデコーダ１０２に、エンコードされたマルチチャネル・オーディオ・プログラムを送達することを実装する（たとえば送信する）。いくつかの実施形態では、システム３１は、エンコードされたマルチチャネル・オーディオ・プログラムを記憶媒体（たとえばディスクまたは一組のディスク）に記憶し、デコーダ１０２は該記憶媒体からプログラムを読むよう構成される。
【０１２６】
エンコーダ１００において「InvChAssign3」とラベル付けされたブロックは、入力プログラムのチャネルに対するチャネル入れ替え（置換行列による乗算と等価）を実行するよう構成される。置換された行列は次いで段１０１においてエンコードを受け、段１０１はN個のエンコードされた信号チャネルを出力する。エンコードされた信号チャネルは、再生スピーカー・チャネルに対応してもよい（だが必須ではない）。エンコードされた信号チャネルは時に、「内部」チャネルと称される。デコーダ（および／またはレンダリング・システム）は典型的にはエンコードされた信号チャネルのコンテンツをデコードし、レンダリングして入力オーディオを復元し、よってエンコードされた信号チャネルはエンコード／デコード・システムの「内部」だからである。段１０１において実行されるエンコードは、置換されたチャネルのサンプルの各集合にエンコード行列（Pn-1,…、P1-1,P0-1として特定される行列乗算のカスケードとして実装される）を乗算することと等価である。
【０１２７】
各行列Pn-1,…、P1-1,P0-1（よって段１０１によって適用されるカスケード）は、前記時間区間上で指定されている、プログラムのN個のチャネルのN個のエンコードされた信号チャネルへの指定された時間変化する混合に従って、サブシステム１０３において決定され、時折（典型的には低頻度で）更新される。
【０１２８】
図６の例示的実施形態に対する変形では、入力オーディオ・プログラムは任意の数（NまたはX、ここでXはNより大きい）のチャネルを含む。そのような変形では、デコーダによって無損失に復元されうる、エンコーダから出力されるエンコードされたビットストリームによって示されるN個のマルチチャネル・オーディオ・プログラム・チャネルは、オーディオ・コンテンツのN個のチャネルであってもよく、それは、前記入力オーディオ・プログラムの前記X個のチャネルに時間変化する混合を適用するよう前記Xチャネルの入力オーディオ・プログラムに対して行列演算を実行し、それにより前記エンコードされたビットストリームの前記エンコードされたオーディオ・コンテンツを決定することにより、前記Xチャネルの入力オーディオ・プログラムから生成されたものであってもよい。
【０１２９】
図６の行列決定サブシステム１０３は、出力行列の四つの集合（エンコードされたチャネルの四つのサブストリームのそれぞれに対応して一つの集合）の係数を示すデータを生成するよう構成される。出力行列の各集合は時折更新され、よって係数も時折更新される。
【０１３０】
出力行列の一つの集合は二つのレンダリング行列P02(t),P12(t)からなり、このそれぞれは次元2×2のプリミティブ行列（好ましくは単位プリミティブ行列）であり、エンコードされたビットストリームのエンコードされたオーディオ・チャネルのうちの二つを含む第一のサブストリーム（ダウンミックス・サブストリーム）をレンダリング（して前記入力オーディオの2チャネル・ダウンミックスをレンダリング）するためである。出力行列のもう一つの集合は6個のレンダリング行列P06(t),P16(t),P26(t),P36(t),P46(t),P56(t)からなり、このそれぞれは次元6×6のプリミティブ行列（好ましくは単位プリミティブ行列）であり、エンコードされたビットストリームのエンコードされたオーディオ・チャネルの6個を含む第二のサブストリーム（ダウンミックス・サブストリーム）をレンダリング（して前記入力オーディオの6チャネル・ダウンミックスをレンダリング）するためである。出力行列のもう一つの集合は八個ものレンダリング行列P08(t),P18(t),,…,P78(t)からなり、このそれぞれは次元8×8のプリミティブ行列（好ましくは単位プリミティブ行列）であり、エンコードされたビットストリームのエンコードされたオーディオ・チャネルの八個を含む第三のサブストリーム（ダウンミックス・サブストリーム）をレンダリング（して前記入力オーディオをの8チャネル・ダウンミックスをレンダリング）するためである。
【０１３１】
出力行列の残りの集合はN個のレンダリング行列P0(t),P1(t),…,Pn(t)からなり、このそれぞれは次元N×Nのプリミティブ行列（好ましくは単位プリミティブ行列）であり、エンコードされたビットストリームのエンコードされたオーディオ・チャネルの全部を含む第四のサブストリームをレンダリング（して前記Nチャネル入力オーディオ・プログラムを無損失復元）するためである。各時刻tについて、レンダリング行列P02(t),P12(t)のカスケードは前記第一のサブストリームのチャネルのためのレンダリング行列と解釈されることができ、レンダリング行列P06(t),P16(t),…,P56(t)のカスケードも前記第二のサブストリームのチャネルのためのレンダリング行列と解釈されることができ、レンダリング行列P08(t),P18(t),…,P78(t)のカスケードも前記第三のサブストリームのチャネルのためのレンダリング行列と解釈されることができ、レンダリング行列P0(t),P1(t),…,Pn(t)のカスケードは前記第四のサブストリームのチャネルのためのレンダリング行列と等価である。
【０１３２】
サブシステム１０３からパッキング・サブシステム１０４に出力される（各レンダリング行列の）係数は、プログラムのチャネルの対応する混合に含められるべき各チャネルの相対または絶対利得を示すメタデータである。（プログラムの間のある時点についての）各レンダリング行列の係数は、混合の各チャネルが、特定の再生システム・スピーカーのためのスピーカー・フィードによって示される（レンダリングされた混合の対応する時点における）オーディオ・コンテンツの混合にどのくらい寄与するべきかを表わす。
【０１３３】
（エンコード段１０１から出力される）N個のエンコードされたオーディオ・チャネル、（サブシステム１０３によって生成される）出力行列係数および典型的にはまた追加的データが、（たとえばエンコードされたビットストリームにメタデータとして含めるために、）パッキング・サブシステム１０４に呈される。パッキング・サブシステム１０４は、それらをエンコードされたビットストリームにまとめ、それが次いで送達システム３１に呈される。
【０１３４】
エンコードされたビットストリームは、N個のエンコードされたオーディオ・チャネル、時間変化する出力行列の前記四つの集合（エンコードされたチャネルの四つのサブストリームのそれぞれに対応して一つの集合）および典型的にはまた追加的なデータ（たとえばオーディオ・コンテンツに関するメタデータ）を示すデータを含む。
【０１３５】
エンコーダ１００の段１０３は、時折出力行列の各集合（たとえば、集合P02,P12または集合P0,P1,…,Pn）を更新する。（第一の時刻t1において）出力される行列の第一の集合P02,P12は、プログラムの間の第一の時刻において（すなわち該第一の時刻に対応する、段１０１のエンコードされた出力の二つのチャネルのサンプルに対して）実行されるべき線形変換を決定するシード行列（プリミティブ行列、たとえば単位プリミティブ行列のカスケードとして実装される）である。（時刻t1において）出力される行列の第一の集合P06(t),P16(t),…,Pn6(t)は、プログラムの間の第一の時刻において（すなわち該第一の時刻に対応する、段１０１のエンコードされた出力の六つのチャネルのサンプルに対して）実行されるべき線形変換を決定するシード行列（プリミティブ行列、たとえば単位プリミティブ行列のカスケードとして実装される）である。（時刻t1において）出力される行列の第一の集合P08(t),P18(t),…,Pn8(t)は、プログラムの間の第一の時刻において（すなわち該第一の時刻に対応する、段１０１のエンコードされた出力の八つのチャネルのサンプルに対して）実行されるべき線形変換を決定するシード行列（プリミティブ行列、たとえば単位プリミティブ行列のカスケードとして実装される）である。（時刻t1において）出力される行列の第一の集合P0,P1,…,Pnは、プログラムの間の第一の時刻において（すなわち該第一の時刻に対応する、段１０１のエンコードされた出力のすべてのチャネルのサンプルに対して）実行されるべき線形変換を決定するシード行列（単位プリミティブ行列のカスケードとして実装される）である。
【０１３６】
段１０３から出力される行列P02,P12の各更新された集合は、プログラムの間の更新時刻において（すなわち該更新時刻に対応する、段１０１のエンコードされた出力の二つのチャネルのサンプルに対して）実行されるべき線形変換を決定する更新されたシード行列（シード・プリミティブ行列のカスケードと称されてもよい、プリミティブ行列のカスケードとして実装される）である。段１０３から出力される行列P06(t),P16(t),…,Pn6(t)の各更新された集合は、プログラムの間の更新時刻において（すなわち該更新時刻に対応する、段１０１のエンコードされた出力の六つのチャネルのサンプルに対して）実行されるべき線形変換を決定する更新されたシード行列（シード・プリミティブ行列のカスケードと称されてもよい、プリミティブ行列のカスケードとして実装される）である。段１０３から出力される行列P08(t),P18(t),…,Pn8(t)の各更新された集合は、プログラムの間の更新時刻において（すなわち該更新時刻に対応する、段１０１のエンコードされた出力の二つのチャネルのサンプルに対して）実行されるべき線形変換を決定する更新されたシード行列（シード・プリミティブ行列のカスケードと称されてもよい、プリミティブ行列のカスケードとして実装される）である。段１０３から出力される行列P0,P1,…,Pnの各更新された集合も、プログラムの間の更新時刻において（すなわち前記第一の時刻に対応する、段１０１のエンコードされた出力のすべてのチャネルのサンプルに対して）実行されるべき線形変換を決定するシード行列（単位シード・プリミティブ行列のカスケードと称されてもよい、単位プリミティブ行列のカスケードとして実装される）である。
【０１３７】
出力段１０３は、補間値をも出力するよう構成される。該補間値は、（各シード行列についての補間関数とともに）デコーダ１０２が（第一の時刻t1よりあとで更新時刻どうしの間の諸時刻に対応する）諸シード行列の補間されたバージョンを生成できるようにする。補間値（これは各補間関数を示すデータを含んでいてもよい）は、段１０４によって、エンコーダ１００から出力されるエンコードされたビットストリームに含められる。そのような補間値の例は本稿の他所で述べる（補間値は、各シード行列についてのデルタ行列を含んでいてもよい）。
【０１３８】
図６のデコーダ１０２を参照するに、パース・サブシステム１０５は、送達システム３１から、エンコードされたビットストリームを受け入れ（読み取りまたは受領し）、該エンコードされたビットストリームをパースするよう構成される。サブシステム１０５は、第一のサブストリーム（エンコードされたビットストリームの二つのエンコードされたチャネルのみを含む）と、第四の（トップ）サブストリームに対応する出力行列（P0,P1,…,Pn）と、第一のサブストリームに対応する出力行列（P02,P12）とを行列乗算段１０６（その処理の結果、もとのNチャネル入力プログラムのコンテンツの2チャネル・ダウンミックス呈示が生じる）に呈するよう動作可能である。サブシステム１０５は、エンコードされたビットストリームの第二のサブストリーム（エンコードされたビットストリームの六つのエンコードされたチャネルを含む）と、第二のサブストリームに対応する出力行列（P06(t),P16(t),…,Pn6(t)）とを行列乗算段１０７（その処理の結果、もとのNチャネル入力プログラムのコンテンツの6チャネル・ダウンミックス呈示が生じる）に呈するよう動作可能である。サブシステム１０５は、エンコードされたビットストリームの第三のサブストリーム（エンコードされたビットストリームの八つのエンコードされたチャネルを含む）と、第三のサブストリームに対応する出力行列（P08(t),P18(t),…,Pn8(t)）とを行列乗算段１０８（その処理の結果、もとのNチャネル入力プログラムのコンテンツの8チャネル・ダウンミックス呈示が生じる）に呈するよう動作可能である。サブシステム１０５はまた、エンコードされたビットストリームの第四の（トップ）サブストリーム（エンコードされたビットストリームの全部のエンコードされたチャネルを含む）および対応する出力行列（P0,P1,…,Pn）を行列乗算段１０９に呈するようにも動作可能である。行列乗算段１０９の処理の結果、もとのNチャネル・プログラムが無損失再現される。
【０１３９】
補間段１１３は、エンコードされたビットストリームに含まれている、前記第四のサブストリームについての各シード行列（すなわち、時刻t1についてのプリミティブ行列の初期集合P0,P1,…,Pnおよびプリミティブ行列P0,P1,…,Pnの各更新された集合）と、（やはりエンコードされたビットストリームに含まれている）前記補間値とを受領するよう結合される。各シード行列の補間されたバージョンを生成するためである。段１１３は、そのような各シード行列を（段１０９に）素通しにしそのような各シード行列の補間されたバージョンを生成（して段１０９に呈）するよう結合され、構成される。（それぞれの補間されたバージョンは、第一の時刻t1よりあとでありかつ最初のシード行列更新時刻より前の、あるいはその後のシード行列更新時刻の間の時刻に対応する。）
補間段１１２は、エンコードされたビットストリームに含まれている、前記第三のサブストリームについての各シード行列（すなわち、時刻t1についてのプリミティブ行列の初期集合P08,P18,…,Pn8およびプリミティブ行列P08,P18,…,Pn8の各更新された集合）と、（やはりエンコードされたビットストリームに含まれている）前記補間値とを受領するよう結合される。そのような各シード行列の補間されたバージョンを生成するためである。段１１２は、そのような各シード行列を（段１０８に）素通しにしそのような各シード行列の補間されたバージョンを生成（して段１０８に呈）するよう結合され、構成される。（それぞれの補間されたバージョンは、第一の時刻t1よりあとでありかつ最初のシード行列更新時刻より前の、あるいはその後のシード行列更新時刻の間の時刻に対応する。）
補間段１１１は、エンコードされたビットストリームに含まれている、前記第二のサブストリームについての各シード行列（すなわち、時刻t1についてのプリミティブ行列の初期集合P06,P16,…,Pn6およびプリミティブ行列P06,P16,…,Pn6の各更新された集合）と、（やはりエンコードされたビットストリームに含まれている）前記補間値とを受領するよう結合される。そのような各シード行列の補間されたバージョンを生成するためである。段１１１は、そのような各シード行列を（段１０７に）素通しにしそのような各シード行列の補間されたバージョンを生成（して段１０７に呈）するよう結合され、構成される。（それぞれの補間されたバージョンは、第一の時刻t1よりあとでありかつ最初のシード行列更新時刻より前の、あるいはその後のシード行列更新時刻の間の時刻に対応する。）
補間段１１０は、エンコードされたビットストリームに含まれている、前記第一のサブストリームについての各シード行列（すなわち、時刻t1についてのプリミティブ行列の初期集合P02,P12およびプリミティブ行列P02,P12の各更新された集合）と、（やはりエンコードされたビットストリームに含まれている）前記補間値とを受領するよう結合される。そのような各シード行列の補間されたバージョンを生成するためである。段１１０は、そのような各シード行列を（段１０６に）素通しにしそのような各シード行列の補間されたバージョンを生成（して段１０６に呈）するよう結合され、構成される。（それぞれの補間されたバージョンは、第一の時刻t1よりあとでありかつ最初のシード行列更新時刻より前の、あるいはその後のシード行列更新時刻の間の時刻に対応する。）
段１０６は、第一のサブストリームの二つのエンコードされたチャネルの二つのオーディオ・サンプルの各ベクトルに、行列P02,P12の最も最近に更新されたカスケード（たとえば、段１１０によって生成された行列P02,P12の最も最近の補間されたバージョンのカスケード）を乗算し、二つの線形変換されたサンプルの、結果として得られる各集合は「ChAssign0」とタイトル付けされたブロックによって表わされるチャネル置換（置換行列による乗算と等価）を受け、N個のもとのオーディオ・チャネルの、要求される2チャネル・ダウンミックスのサンプルの各対を与える。エンコーダ４０およびデコーダ１０２において実行される行列処理動作のカスケードは、N個の入力オーディオ・チャネルを2チャネル・ダウンミックスに変換するダウンミックス行列指定の適用と等価である。
【０１４０】
段１０７は、第二のサブストリームの六つのエンコードされたチャネルの六つのオーディオ・サンプルの各ベクトルに、行列P06,…,Pn6の最も最近に更新されたカスケード（たとえば、段１１１によって生成された行列P06,…,Pn6の最も最近の補間されたバージョンのカスケード）を乗算し、六つの線形変換されたサンプルの、結果として得られる各集合は「ChAssign1」とタイトル付けされたブロックによって表わされるチャネル置換（置換行列による乗算と等価）を受け、N個のもとのオーディオ・チャネルの、要求される6チャネル・ダウンミックスのサンプルの各集合を与える。エンコーダ１００およびデコーダ１０２において実行される行列処理動作のカスケードは、N個の入力オーディオ・チャネルを6チャネル・ダウンミックスに変換するダウンミックス行列指定の適用と等価である。
【０１４１】
段１０８は、第三のサブストリームの八つのエンコードされたチャネルの八つのオーディオ・サンプルの各ベクトルに、行列P08,…,Pn8の最も最近に更新されたカスケード（たとえば、段１１２によって生成された行列P08,…,Pn8の最も最近の補間されたバージョンのカスケード）を乗算し、八つの線形変換されたサンプルの、結果として得られる各集合は「ChAssign2」とタイトル付けされたブロックによって表わされるチャネル置換（置換行列による乗算と等価）を受け、N個のもとのオーディオ・チャネルの、要求される8チャネル・ダウンミックスのサンプルの各対を与える。エンコーダ１００およびデコーダ１０２において実行される行列処理動作のカスケードは、N個の入力オーディオ・チャネルを8チャネル・ダウンミックスに変換するダウンミックス行列指定の適用と等価である。
【０１４２】
段１０９は、N個のオーディオ・サンプルの各ベクトル（エンコードされたビットストリームのN個のチャネルのフル集合のそれぞれから一つ）に行列P0,P1,…,Pnの最も最近に更新されたカスケード（たとえば、段１１３によって生成された行列P0,P1,…,Pnの最も最近の補間されたバージョンのカスケード）を乗算し、N個の線形変換されたサンプルの、結果として得られる各集合は「ChAssign3」とラベル付けされたブロックによって表わされるチャネル置換（置換行列による乗算と等価）を受け、無損失復元されたもとのNチャネル・プログラムのN個のサンプルの各集合を与える。（本システムの「無損失」特性を達成するよう）出力Nチャネル・オーディオが厳密に入力Nチャネル・オーディオと同じであるためには、エンコーダ１００において実行される行列処理動作は、（量子化効果を含め）厳密に、エンコードされたビットストリームの前記第四のサブストリームに対してデコーダ１０２において実行される行列処理動作（すなわち、デコーダ１０２の段１０９における行列P0,P1,…,Pnのカスケードの各乗算）の逆であるべきである。こうして、図６では、エンコーダ１００の段１０３における行列処理動作は、行列P0,P1,…,Pnの逆行列の、デコーダ１０２の段１０９において適用される反対シーケンスでのカスケード、すなわちPn-1,…、P1-1,P0-1として特定される。
【０１４３】
いくつかの実装では、パース・サブシステム１０５は、エンコードされたビットストリームから検査語を抽出するよう構成され、段１０９は段１０９によって復元された（マルチチャネル・オーディオ・プログラムの少なくとも一つのセグメントの）N個のチャネルが正しく復元されているかどうかを、段１０９によって生成されるオーディオ・サンプルから（たとえば段１０９によって）導出される第二の検査語を、エンコードされたビットストリームから抽出された検査語と突き合わせて比較することによって、検証するよう構成される。
【０１４４】
デコーダ１０２の段「ChAssign3」は、段１０９の出力に対して、エンコーダ１００によって適用されたチャネル置換の逆を適用する（デコーダ１０２の要素「ChAssign3」によって表わされる置換行列はエンコーダ１００の要素「InvChAssign3」によって表わされるものの逆である）。
【０１４５】
図６に示されるシステムのサブシステム１００および１０２の変形では、要素の一つまたは複数が省略されるまたは追加的なオーディオ・データ処理ユニットが含められる。
【０１４６】
デコーダ１００の段１０８（または１０７または１０６）に呈されるレンダリング行列係数P08,…,Pn8（またはP06,…,Pn6またはP02,Pn2）は、エンコーダ１００によってエンコードされたもとのNチャネル・コンテンツのチャネルのダウンミックスに含められるべき各スピーカー・チャネルの相対または絶対利得を示す（またはそれを示す他のデータと一緒に処理されてもよい）、エンコードされたビットストリームのメタデータ（たとえば空間位置メタデータ）である。
【０１４７】
対照的に、（デコーダ１０２によって無損失に復元される）オブジェクト・ベースのオーディオ・プログラムのチャネルのフル集合をレンダリングするために用いられるべき再生スピーカー・システムの構成は、典型的には、エンコードされたビットストリームがエンコーダ１００によって生成される時点では未知である。当該プログラムの各チャネルが特定の再生システム・スピーカーのためのスピーカー・フィードによって示される（レンダリングされた混合の各時点における）オーディオ・コンテンツの混合にどのくらい寄与すべきかを決定するために、デコーダ１０２によって無損失に復元されるNチャネルは、他のデータ（たとえば特定の再生スピーカー・システムの構成を示すデータ）と一緒に（たとえばデコーダ１０２に含まれる（だが図６には示されない）またはデコーダ１０２に結合されるレンダリング・システムにおいて）処理される必要があることがある。そのようなレンダリング・システムは、無損失に復元されたコンテンツの再生のために用いられるべき特定の再生スピーカー・システムのスピーカーのためのスピーカー・フィードを決定するために、それぞれの無損失に復元されたオブジェクト・チャネル内の（またはそれに関連付けられている）空間軌跡メタデータを処理してもよい。
【０１４８】
本発明のエンコーダのいくつかの実施形態では、エンコーダは、Nチャネル・オーディオ・プログラム（たとえばオブジェクト・ベースのオーディオ・プログラム）のすべてのチャネルをどのようにN個のエンコードされたチャネルの集合に変換するかを指定する動的に変化する指定A(t)と、N個のエンコードされたチャネルのコンテンツの、M1チャネル呈示への各ダウンミックスを指定する少なくとも一つの動的に変化するダウンミックス指定を提供される（または生成する）。（ここで、MはN未満であり、たとえばM1＝2またはNが8より大きいときにM1＝8。）いくつかの実施形態では、エンコーダの仕事は、エンコードされたオーディオおよびそのような各動的に変化する指定を示すデータを、所定のフォーマットをもつエンコードされたビットストリーム（たとえばトゥルーHDビットストリーム）にパックすることである。たとえば、これは、向上されたデコーダを使えばもとのNチャネルのオーディオ・プログラムを（無損失で）復元しうる一方、レガシー・デコーダ（たとえばレガシーのトゥルーHDデコーダ）が少なくとも一つのダウンミックス呈示（M1個のチャネルを有する）を復元できるよう、なされてもよい。動的に変化する指定を与えられて、エンコーダは、デコーダが、デコーダに送達されるエンコードされたビットストリームに含まれる補間値（たとえば、シード・プリミティブ行列およびシード・デルタ行列の情報）から、補間されたプリミティブ行列P0,P1,…,Pnを決定すると想定してもよい。その際、デコーダは、補間を実行して、エンコードされたビットストリームのエンコードされたオーディオ・コンテンツを生成したエンコーダの動作の逆を行なう補間されたプリミティブ行列を決定する（たとえば、エンコーダにおいて行列演算を受けることによってエンコードされたコンテンツを無損失で復元するために）。任意的に、エンコーダは、やはりデコーダが、デコーダに送達されるエンコードされたビットストリームに含まれる補間値（たとえば、シード・プリミティブ行列およびシード・デルタ行列の情報）から、トップ（Nチャネル）サブストリームの無損失復元のための補間されたプリミティブ行列（P0,P1,…,Pn）を決定すると想定しつつ、より低位のサブストリーム（すなわち、トップNチャネル・サブストリームのコンテンツのダウンミックスを示すサブストリーム）のためのプリミティブ行列が補間されていないプリミティブ行列であるよう選択してもよい（そして、そのような補間されていないプリミティブ行列の集合のシーケンスをエンコードされたビットストリームに含めてもよい）。
【０１４９】
たとえば、エンコーダ（たとえばエンコーダ４０の段４４またはエンコーダ１００の段１０３）は（補間関数f(t)と一緒に使うための）シード・プリミティブ行列およびシード・デルタ行列を選ぶよう構成されていてもよい。これは、異なる時点t1,t2,t3,…（これらは密な間隔であってもよい）において指定A(t)をサンプリングし、対応するシード・プリミティブ行列を導出し（たとえば通常のトゥルーHDエンコーダにおけるように）、次いでそれらのシード・プリミティブ行列における個々の要素の変化のレートを計算して補間値（たとえば、シード・デルタ行列のシーケンスを示す「デルタ」情報）を計算することによってもよい。シード・プリミティブ行列の第一の集合は、そのような時点の第一のものについての指定A(t1)から導出されるプリミティブ行列であろう。それらのプリミティブ行列の部分集合が時間的に全く変化しないことがありうることが可能である。その場合、デコーダは、エンコードされたビットストリーム中の適切な制御情報に対して、対応するデルタ情報があればそれを0にする（すなわち、プリミティブ行列のそのような部分集合の変化のレートを0に設定する）ことによって、応答する。
【０１５０】
本発明のエンコーダおよびデコーダの図６の実施形態に対する変形は、エンコードされたビットストリームのサブストリームのいくつか（すなわち少なくとも一つ）についての補間を省略してもよい。たとえば、補間段１１０、１１１、１１２は省略されてもよく、対応する行列P02,P12およびP06,P16,…,Pn6およびP08,P18,…,Pn8は、更新される時点の間の補間が不要になるよう十分な頻度で（エンコードされたビットストリームにおいて）更新されてもよい。もう一つの例として、行列P06,P16,…,Pn6が更新間の時刻における補間が不要になるよう十分な頻度で更新される場合、補間段１１１は不要であり、省略されてもよい。このように、通常のデコーダ（補間を実行するよう本発明に従って構成されていないもの）は、エンコードされたビットストリームに応答して、6チャネル・ダウンミックス呈示をレンダリングできる。
【０１５１】
上記のように、ダイナミック・レンダリング行列指定（たとえばA(t)）は、オブジェクト・ベースのオーディオ・プログラムをレンダリングする必要性からのみならず、クリップ保護を実装する必要性にも起因して生じうる。補間されたプリミティブ行列は、より高速なダウンミックスのクリップ保護へのランプおよび該クリップ保護からのリリースならびに行列処理係数を伝達するために必要とされるデータ・レートの低減を可能にしてもよい。
【０１５２】
次に、図６のシステムの実装の動作の例を記述する。この場合、Nチャネル入力プログラムは、ベッド・チャネルCおよび二つのオブジェクト・チャネルUおよびVを含む三チャネルのオブジェクト・ベースのオーディオ・プログラムである。このプログラムが、二つのサブストリームを有するトゥルーHDストリームを介して転送のためにエンコードされ、第一のサブストリームを使って2チャネル・ダウンミックス（2チャネル・スピーカー・セットアップへの当該プログラムのレンダリング）が取得されることができ、両方のサブストリームを使ってもとの3チャネルの入力プログラムが無損失で復元されることができるようにすることが所望される。
【０１５３】
入力プログラムから2チャネル混合へのレンダリングの式（またはダウンミックスの式）が次式によって与えられるとする。
【０１５４】
【数５】
0006388924.tif 000006
ここで、第一列は、LおよびRチャネルに等しくフィードするベッド・チャネル（中央チャネルC）の利得に対応する。第二列および第三列はそれぞれオブジェクト・チャネルUおよびオブジェクト・チャネルVに対応する。第一行は2チャネル・ダウンミックスのLチャネルに対応し、第二行はRチャネルに対応する。二つのオブジェクトはによって決定される速度で互いに向かって動いている。
【０１５５】
三つの異なる時点t1,t2,t3におけるレンダリング行列を調べる。この例では、t1＝0、すなわち
【数６】
0006388924.tif 000007
と想定する。換言すれば、t1では、オブジェクトUは完全にRにフィードし、オブジェクトVは完全にL中に混合される。これらのオブジェクトが互いに近づくにつれて、遠いほうのスピーカーへのそれらの寄与が増大する。この例をさらに発展させると、v＝(π/4)×(1/40T)であるとする。ここで、Tはアクセス単位の長さである（典型的には48kHzのサンプリング・レートで0.8333msまたは40サンプル）。このように、t＝40Tにおいて、二つのオブジェクトはシーンの中心にある。ここでt2＝15Tおよびt3＝30Tを考える。
【０１５６】
【数７】
0006388924.tif 000008
提供された指定A2(t)を入力および出力プリミティブ行列に分解することを考える。簡単のため、行列P02,P12は恒等行列であり、（デコーダ１０２における）chAssign0は、トリビアルな置換（恒等行列）に等しい恒等チャネル割り当てであると想定する。
【０１５７】
【数８】
0006388924.tif 000009
であることがわかる。上記の積の最初の二つの行はちょうど指定A2(t1)である。換言すれば、プリミティブ行列P0-1(t1),P1-1(t1),P2-1(t1)およびInvChAssign1(t1)によって示されるチャネル割り当ては一緒になって、入力チャネルC、オブジェクトUおよびオブジェクトVを三つの内部チャネルに変換する結果を与える。該内部チャネルの最初の二つはちょうど要求されるダウンミックスLおよびRである。このように、A(t1)のプリミティブ行列P0-1(t1),P1-1(t1),P2-1(t1)およびチャネル割り当てInvChAssign1(t1)への上記の分解は、二チャネル呈示のための出力プリミティブ行列およびチャネル割り当てが恒等行列であるよう選ばれている場合には、入力プリミティブ行列の有効な選択である。入力プリミティブ行列が、三つすべての内部チャネルに対して作用するデコーダのによってC、オブジェクトU、オブジェクトVを取得するために無損失可逆であることを注意しておく。しかしながら、二チャネル・デコーダは内部チャネル１および２を必要とするだけであり、出力プリミティブ行列P02,P12およびchAssign0（この場合これらはみな恒等である）を適用する。
【０１５８】
同様に、次のことを識別できる。
【０１５９】
【数９】
0006388924.tif 000010
最初の二つの行がA(t2)と同一。
【０１６０】
【数１０】
0006388924.tif 000011
最初の二つの行がA(t3)と同一。
【０１６１】
（本発明を実装しない）レガシーのトゥルーHDエンコーダは、t1,t2,t3における上記で設計されたプリミティブ行列（の逆）、すなわち{P0(t1),P1(t1),P2(t1)},{P0(t2),P1(t2),P2(t2)},{P0(t3),P1(t3),P2(t3)}を伝送することを選んでもよい。この場合、t1とt2の間の任意の時刻tにおける指定は、A(t1)における指定によって近似され、t2とt3の間ではA(t2)によって近似される。
【０１６２】
図６のシステムの例示的実施形態では、t＝t1またはt＝t2またはt＝t3におけるプリミティブ行列P0-1(t)は同じチャネル（チャネル２）に対して作用する。すなわち、三つすべての場合におけるトリビアルでない行は第二行である。P1-1(t)およびP2-1(t)についても同様である。さらに、各時点におけるInvChAssign1は同じである。
【０１６３】
このように、図６のエンコーダ１００の例示的実施形態によってエンコードを実装するために、次のデルタ行列を計算することができる。
【０１６４】
【数１１】
0006388924.tif 000012
レガシーのトゥルーHDエンコーダとは対照的に、補間された行列処理ができるようにされたトゥルーHDエンコーダ（図６のエンコーダ１００の例示的実施形態）は、シード（プリミティブおよびデルタ）行列
{P0(t1),P1(t1),P2(t1)},{Δ0(t1),Δ1(t1),Δ2(t1)},{Δ0(t2),Δ1(t2),Δ2(t2)}
を送ることを選んでもよい。
【０１６５】
任意の中間的な時点におけるプリミティブ行列およびデルタ行列は、補間によって導出される。t1とt2の間の所与の時刻tにおける達成されるダウンミックスの式は、上記積
【数１２】
0006388924.tif 000013
の最初の二行として、
t2とt3の間では
【数１３】
0006388924.tif 000014
として導出されることができる。
【０１６６】
上記では、行列{P0(t2),P1(t2),P2(t2)}は実際に伝送されないが、デルタ行列{Δ0(t1),Δ1(t1),Δ2(t1)}を用いた補間の最後の点のプリミティブ行列として導出される。
【０１６７】
このように、上記のシナリオ両方について、各時点「t」における達成されたダウンミックスの式がわかる。このように、所与の時刻「t」における近似と、その時点についての真の指定との間のミスマッチを計算することができる。図７は、プリミティブ行列の補間を使った場合（「補間された行列処理」とラベル付けされた曲線）と区分ごとに一定の（補間されない）プリミティブ行列を用いた場合（「補間されない行列処理」とラベル付けされる）の、種々の時点tにおける達成された指定と真の指定との間の平方誤差和のグラフである。図７から、領域0〜600s（t1〜t2）において、補間された行列処理が、補間されない行列処理と比べて、有意により近く、指定A2(t)を達成する結果となることが明白である。補間されない行列処理を用いて同じレベルの歪みを達成するためには、t1とt2の間の複数の点において行列更新を送る必要があっただろう。
【０１６８】
補間されない行列処理は、いくつかの中間的な時点において（たとえば図７の例における600s〜900sの間で）真の指定により近い、達成されたダウンミックスを与える結果となることがあるが、補間されない行列処理における誤差は、次の行列更新までの時間が減るとともに連続的に積み上がり、一方、補間された行列処理での誤差は更新点（この場合、t3＝30*T＝1200sにある）の近くでは消える。補間された行列処理における誤差は、t2とt3の間でさらなるデルタ更新を送ることによりさらに低減されることができる。
【０１６９】
本発明のさまざまな実施形態は、次の特徴の一つまたは複数を実装する。
〔特徴１〕プリミティブ行列（好ましくは単位プリミティブ行列）のシーケンスを適用することによる、一組のオーディオ・チャネルの同数の他のオーディオ・チャネルへの変換であって、前記プリミティブ行列の少なくとも一部のそれぞれは、同じオーディオ・チャネルに対して作用するシード・プリミティブ行列およびシード・デルタ行列の（補間関数に従って決定される）線形結合として計算された補間されたプリミティブ行列である。線形結合係数は、補間関数によって決定される（すなわち、補間されたプリミティブ行列のそれぞれの係数は、線形結合A＋f(t)Bであり、ここで、Aはシード・プリミティブ行列の係数であり、Bはシード・デルタ行列の対応する係数であり、f(t)は補間されたプリミティブ行列に関連付けられる時刻tにおける補間関数の値である）。いくつかの場合には、当該変換は、エンコードされたビットストリームのエンコードされたオーディオ・コンテンツに対して実行されて、エンコードされたビットストリームを生成するためにエンコードされたオーディオ・コンテンツの無損失復元を実装する。
〔特徴２〕特徴１記載の変換であって、補間されたプリミティブ行列の適用は、前記シード・プリミティブ行列およびシード・デルタ行列を別個に、変換されるべきオーディオ・チャネルに対して適用し、結果として得られるオーディオ・サンプルを線形結合することによって達成される、変換。（たとえば、シード・プリミティブ行列の行列乗算は、図４の回路におけるように、シード・デルタ行列による行列乗算と並列に実行される。）
〔特徴３〕特徴１記載の変換であって、前記補間因子は、エンコードされたビットストリームのサンプルのいくつかの時間区間（たとえば短い区間）にわたって実質的に一定に保持され、最も最近のシード・プリミティブ行列は、補間因子が変化する区間の間においてのみ（補間によって）更新される、変換。（たとえば、デコーダにおける処理の複雑さを低減するため。）
〔特徴４〕補間されたプリミティブ行列が単位プリミティブ行列である、特徴１記載の変換。この場合、（エンコーダにおける）単位プリミティブ行列のカスケードの乗算およびそれに続くそれらの行列の逆行列のカスケードの（デコーダにおける）乗算は、有限精度の処理を用いて無損失で実行されることができる。
〔特徴５〕当該変換がオーディオ・デコーダにおいて実行される、特徴１記載の変換。該デコーダは、エンコードされたオーディオ・チャネルおよびシード行列を、エンコードされたビットストリームから抽出する。該デコーダは、好ましくは、デコードされた（ポスト行列処理された）オーディオが正しく決定されているかどうかを検証するよう構成される。該検証は、ポスト行列処理されたオーディオから導出された検査語を、エンコードされたビットストリームから抽出された検査語に対して比較することによる。
〔特徴６〕当該変換が無損失オーディオ符号化システムのデコーダにおいて実行される、特徴１記載の変換。該システムは、エンコードされたオーディオ・チャネルおよびシード行列を、エンコードされたビットストリームから抽出する。エンコードされたオーディオ・チャネルは対応するエンコーダによって生成されたものである。該エンコーダは、前記無損失の逆プリミティブ行列を入浴オーディオに適用し、それにより該入力オーディオを無損失に前記ビットストリームにエンコードする。
〔特徴７〕当該変換がデコーダにおいて実行される、特徴１記載の変換。該デコーダは、受領されたエンコードされたチャネルに、プリミティブ行列のカスケードを乗算し、前記プリミティブ行列のうちの部分集合のみが補間によって決定される。（すなわち、他のプリミティブ行列の更新されたバージョンは時折デコーダに送達されてもよいが、デコーダはそれらを更新するために補間を実行しない。）
〔特徴８〕前記シード・プリミティブ行列、シード・デルタ行列および補間関数は、エンコーダによってエンコードされたもとのオーディオの特定のダウンミックスを達成するために、エンコーダによって生成されたエンコードされたチャネルの部分集合が、デコーダによって（それらの行列および補間関数を使って）実行される行列処理動作を介して変換されることができるように選ばれる、特徴１記載の変換。
〔特徴９〕もとのオーディオがオブジェクト・ベースのオーディオ・プログラムであり、前記特定のダウンミックスが前記プログラムのチャネルの静的なスピーカー・レイアウト（たとえばステレオまたは5,1チャネルまたは7.1チャネル）へのレンダリングに対応する、特徴８記載の変換。
〔特徴１０〕前記プログラムによって示されるオーディオ・オブジェクトが動的であり、特定の静的なスピーカー・レイアウトへのダウンミックス指定は瞬時に変化し、該瞬時の変化は、エンコードされたオーディオ・チャネルに対して補間された行列処理を実行してダウンミックス呈示を生成することによって受け入れられる、特徴９記載の変換。
〔特徴１１〕補間ができるようにされたデコーダ（本発明のある実施形態に基づく補間を実行するよう構成されている）が、何らかの補間された行列を決定するために補間を実行することなく、レガシーのシンタックスに従って、エンコードされたビットストリームのサブストリームをデコードすることもできる、特徴１記載の変換。
〔特徴１２〕前記プリミティブ行列が、よりよい圧縮を達成するようチャネル間相関を活用するよう設計されている、特徴１記載の変換。
〔特徴１３〕補間された行列処理が、クリップ保護のために設計された動的なダウンミックス指定を達成するために使われる、特徴１記載の変換。
【０１７０】
源オーディオがオブジェクト・ベースのオーディオ・プログラムであるときは、（エンコードされたビットストリームからダウンミックス呈示を復元するための）本発明のある実施形態に基づく補間を使って生成されたダウンミックス行列が典型的には連続的に変化することを考えると、本発明の典型的な実施形態において用いられる（すなわちエンコードされたビットストリームに含められる）シード・プリミティブ行列は典型的には、そのようなダウンミックス呈示を復元するために頻繁に更新される必要がある。
【０１７１】
シード・プリミティブ行列が頻繁に更新されるならば、連続的に変化する行列指定を緊密に近似するために、エンコードされたビットストリームは典型的には、シード・プリミティブ行列の諸集合の諸カスケードのシーケンス{P0(t1),P1(t1),…,Pn(t1)},{P0(t2),P1(t2),…,Pn(t2)},{P0(t3),P1(t3),…,Pn(t3)}を示すデータを含む。これは、デコーダが、更新時点t1,t2,t3,…のそれぞれにおいて行列の指定されたカスケードを復元することを許容する。オブジェクト・ベースのオーディオ・プログラムをレンダリングするためのシステムにおいて指定されるレンダリング行列は典型的には時間的に連続的に変化するので、（エンコードされたビットストリームに含められるシード・プリミティブ行列の諸カスケードのシーケンスにおける）各シード・プリミティブ行列は（少なくともそのプログラムの区間にわたって）同じプリミティブ行列構成を有していてもよい。プリミティブ行列における係数自身が時間とともに変化することがあるが、行列構成は変化しない（または係数ほど頻繁に変化しない）。各カスケードについての行列構成は、次のようなパラメータによって決定されてもよい。
１．カスケード中のプリミティブ行列の数、
２．それらの行列が操作するチャネルの順序、
３．それらの行列における係数の大きさの順序、
４．該係数を表わすために必要とされる分解能（ビット単位）、
５．恒等的に0である係数の位置。
【０１７２】
そのようなプリミティブ行列構成を示すパラメータは、多数のシード行列更新の区間の間不変のままであってもよい。そのようなパラメータの一つまたは複数は、デコーダが所望されるように動作するために、エンコードされたビットストリームを介してデコーダに伝送される必要があることがある。そのような構成パラメータはプリミティブ行列更新自身ほど頻繁に変化しないことがあるので、いくつかの実施形態では、エンコードされたビットストリーム・シンタックスは行列構成パラメータが、一組のシード行列の行列係数への更新とともに伝送されるかどうかを、独立に指定する。対照的に、通常のトゥルーHDエンコードでは、（エンコードされたビットストリームによって示される）行列更新には必ず構成更新が伴う。本発明の考えられている実施形態では、デコーダは、行列係数についてのみ更新が受領される場合には、最後の受領された行列構成情報を保持し、使用する（すなわち、行列構成更新なし）。
【０１７３】
補間された行列処理は典型的には低いシード行列更新レートを許容するものの、考えられている実施形態（行列構成更新が各シード行列更新に伴っても伴わなくてもよい）は、構成情報を効率的に伝送し、レンダリング行列を更新するために必要とされるビットレートをさらに低減することが期待される。考えられている実施形態では、構成パラメータは、各シード・プリミティブ行列に関連するパラメータおよび／または伝送されるデルタ行列に関連するパラメータを含んでいてもよい。
【０１７４】
全体的な伝送されるビットレートを最小にするために、エンコーダは、行列構成を更新することと、行列構成を不変に維持しつつ行列係数更新に対してもう少し多くのビットを費やすこととの間のトレードオフを実装してもよい。
【０１７５】
補間された行列処理は、あるエンコードされたチャネルのためのあるプリミティブ行列から同じチャネルに作用する別のものへとたどるよう傾き情報を伝送することによって達成されてもよい。傾きは、アクセス単位（「AU」）毎の行列係数の変化のレートとして伝送されてもよい。m1およびm2がKアクセス単位離れている時刻についてのプリミティブ行列係数であるとすると、m1からm2へ補間するための傾きは、デルタ＝(m2−m1)/Kとして定義されうる。
【０１７６】
係数m1およびm2が次のフォーマット：m1＝a.bcdefgおよびm2＝a.bcuvwxもつビットを有し、どちらの係数も特定のビット数（これは「frac_bits」と表わされてもよい）精度をもって指定されている場合、、傾き「デルタ」は、形0.0000mnopの値によって示される（AU毎のデルタの指定のために必要とされるより高い精度および追加的な先頭の0をもつ）。傾き「デルタ」を表わすために必要とされる追加的な精度は「delta_precision」として定義されてもよい。本発明の実施形態が、各デルタ値を、エンコードされたビットストリーム中に直接含める段階を含む場合には、エンコードされたビットストリームは、式B＝frac_bits＋delta_precisionを満たすビット数「B」を有する値を含む必要があろう。明らかに、小数点の後の先頭の0を伝送するのは不十分である。このように、いくつかの実施形態では、（デコーダに送達される）エンコードされたビットストリームにおいて符号化されるものは、mnopqrの形をもつ正規化されたデルタ（整数）であり、これはdelta_bitsに一つの符号ビットを加えたもので表わされる。delta_bitsおよびdelta_precision値は、エンコードされたビットストリームにおいて、デルタ行列のための構成情報の一部として伝送されてもよい。そのような実施形態では、デコーダは、必要とされるデルタを、この場合、
デルタ＝(ビットストリーム中の正規化されたデルタ)*2-(frac_bits+delta_precision)
として導出するよう構成される。
【０１７７】
このように、いくつかの実施形態では、エンコードされたビットストリームに含まれる補間値は、Yビットの精度（ここでY＝frac_bits）をもつ正規化されたデルタ値と、精度値とを含む。正規化されたデルタ値は、デルタ値の正規化されたバージョンを示し、ここで、該デルタ値はプリミティブ行列の係数の変化のレートを示し、プリミティブ行列の各係数はYビットの精度をもつ。精度値は、プリミティブ行列の係数を表わすために必要とされる精度に対し、前記デルタ値を表わすために必要とされる精度の増大を示す（すなわち、「delta_precision」）。前記デルタ値は、前記正規化されたデルタ値を、前記プリミティブ行列の係数の分解能および前記精度値に依存するスケール因子によってスケーリングすることによって導出されてもよい。
【０１７８】
本発明の実施形態は、ハードウェア、ファームウェアまたはソフトウェアまたはそれらの組み合わせにおいて（たとえばプログラム可能な論理アレイとして）実装されてもよい。たとえば、エンコーダ４０または１００またはデコーダ４２または１０２またはデコーダ４２のサブシステム４７、４８、６０、６１またはデコーダ１０２のサブシステム１１０〜１１３、１０６〜１０９は、適切にプログラムされた（または他の仕方で構成された）ハードウェアまたはファームウェアにおいて、たとえばプログラムされた汎用プロセッサ、デジタル信号プロセッサまたはマイクロプロセッサとして実装されてもよい。特に断わりのない限り、本発明の一部として含まれるアルゴリズムまたはプロセスは、いかなる特定のコンピュータまたは他の装置にも本来的に関係していない。特に、さまざまな汎用機械が、本願の教示に従って書かれたプログラムとともに使用されてもよく、あるいは必要とされる方法ステップを実行するためにより特化した装置（たとえば集積回路）を構築することがより便利であることがある。このように、本発明は、一つまたは複数のプログラム可能なコンピュータ・システム（エンコーダ４０または１００またはデコーダ４２または１０２またはデコーダ４２のサブシステム４７、４８、６０および／または６１またはデコーダ１０２のサブシステム１１０〜１１３、１０６〜１０９を実装するコンピュータ・システム）上で実行される一つまたは複数のコンピュータ・プログラムにおいて実装されてもよい。各コンピュータ・システムは、少なくとも一つのプロセッサ、少なくとも一つのデータ記憶システム（揮発性および不揮発性メモリおよび／または記憶要素を含む）、少なくとも一つの入力装置またはポートおよび少なくとも一つの出力装置またはポートを有する。本稿に記載される機能を実行し、出力情報を生成するようプログラム・コードが入力データに適用される。出力情報は、既知の仕方で一つまたは複数の出力装置に適用される。
【０１７９】
そのような各プログラムは、コンピュータ・システムと通信するためにいかなる所望されるコンピュータ言語（機械、アセンブリーまたは高水準手続き型、論理的またはオブジェクト指向のプログラミング言語を含む）において実装されてもよい。いずれの場合にも、言語はコンパイルされる言語でもインタープリットされる言語でもよい。
【０１８０】
たとえば、コンピュータ・ソフトウェア命令のシーケンスによって実装されるとき、本発明の実施形態のさまざまな機能および段階は、好適なデジタル信号処理ハードウェアにおいて実行されるマルチスレッド式のソフトウェア命令シーケンスによって実装されてもよく、その場合、実施形態のさまざまな装置、段階および機能は、ソフトウェア命令の諸部分に対応してもよい。
【０１８１】
そのような各コンピュータ・プログラムは好ましくは、汎用または専用のプログラム可能なコンピュータによって読み取り可能な記憶媒体またはデバイス（たとえば半導体メモリまたはメディアまたは磁気式もしくは光学式メディア）に記憶されるまたはダウンロードされ、記憶媒体またはデバイスがコンピュータ・システムによって読まれたときに、本稿に記載される手順を実行するようコンピュータを構成するまたは動作させる。本発明のシステムは、コンピュータ・プログラムをもって構成された（すなわちコンピュータ・プログラムを記憶している）コンピュータ可読記憶媒体として実装されてもよく、そのように構成された記憶媒体はコンピュータ・システムを、本稿に記載される機能を実行するよう特定のあらかじめ定義された仕方で動作させる。
【０１８２】
諸実装が例として、例示的な特定の実施形態を用いて記述されてきたが、本発明の実装は開示される実施形態に限定されないことは理解しておくものとする。逆に、当業者に明白なさまざまな修正および類似の構成をカバーすることが意図されている。したがって、付属の請求項の範囲は、そのようなあらゆる修正および類似の構成を包含するよう最も広い解釈が与えられるべきである。
いくつかの付番実施例を記載しておく。
〔付番実施例１〕
Nチャネルのオーディオ・プログラムをエンコードする方法であって、前記プログラムはある時間区間にわたって指定され、前記時間区間は時刻t1から時刻t2までの部分区間を含み、N個のエンコードされた信号チャネルのM個の出力チャネルへの時間変化する混合A(t)が前記時間区間上で指定されており、MはN以下であり、当該方法は：
前記N個のエンコードされた信号チャネルのサンプルに適用されるときに前記N個のエンコードされた信号チャネルのオーディオ・コンテンツの前記M個の出力チャネルへの第一の混合を実装するN×Nプリミティブ行列の第一のカスケードを決定する段階であって、前記第一の混合は、該第一の混合が少なくとも実質的にA(t1)に等しいという意味で前記時間変化する混合A(t)に整合する、段階と；
プリミティブ行列の前記第一のカスケードおよび前記部分区間上で定義される補間関数とともに、N×Nの更新されたプリミティブ行列の諸カスケードのシーケンスを示す補間値を決定する段階であって、更新されたプリミティブ行列の各カスケードは、前記N個のエンコードされた信号チャネルのサンプルに適用されるとき、前記N個のエンコードされた信号チャネルの前記M個の出力チャネルへの、前記部分区間における異なる時刻に関連付けられた更新された混合を実装し、それぞれの前記更新された混合は、前記時間変化する混合A(t)と整合する、段階と；
エンコードされたオーディオ・コンテンツ、前記補間値およびプリミティブ行列の前記第一のカスケードを示すエンコードされたビットストリームを生成する段階とを含む、
方法。
〔付番実施例２〕
前記プリミティブ行列のそれぞれが単位プリミティブ行列である、付番実施例１記載の方法。
〔付番実施例３〕
前記プログラムのN個のチャネルのサンプルに対して行列演算を実行することによって、前記エンコードされたオーディオ・コンテンツを生成する段階をも含み、該段階は、前記サンプルに行列カスケードのシーケンスを適用することによることを含み、前記シーケンスにおける各行列カスケードは、プリミティブ行列のカスケードであり、行列カスケードの前記シーケンスは、前記第一のカスケードのプリミティブ行列の逆行列のカスケードである第一の逆行列カスケードを含む、付番実施例２記載の方法。
〔付番実施例４〕
前記プログラムのN個のチャネルのサンプルに対して行列演算を実行することによって、前記エンコードされたオーディオ・コンテンツを生成する段階をも含み、該段階は、前記サンプルに行列カスケードのシーケンスを適用することによることを含み、前記シーケンスにおける各行列カスケードは、プリミティブ行列のカスケードであり、前記シーケンスにおける各行列カスケードは、N×Nの更新されたプリミティブ行列のカスケードの対応するカスケードの逆であり、N＝Mであり、前記M個の出力チャネルは無損失で復元された前記プログラムの前記N個のチャネルと同じである、付番実施例２記載の方法。
〔付番実施例５〕
N＝Mであり、前記エンコードされたビットストリームを処理することによって前記プログラムの前記N個のチャネルを無損失で復元する段階をも含み、該復元は、前記補間値、プリミティブ行列の前記第一のカスケードおよび前記補間関数から、N×Nの更新されたプリミティブ行列の諸カスケードの前記シーケンスを決定するよう補間を実行することによることを含む、
付番実施例２記載の方法。
〔付番実施例６〕
前記エンコードされたビットストリームが前記補間関数をも示す、付番実施例５記載の方法。
〔付番実施例７〕
M＝Nであり：
前記エンコードされたビットストリームを、前記補間関数を実装するよう構成されたデコーダに送達する段階と；
前記デコーダにおいて前記エンコードされたビットストリームを処理して、前記プログラムの前記N個のチャネルを無損失で復元する段階であって、前記補間値、プリミティブ行列の前記第一のカスケードおよび前記補間関数から、N×Nの更新されたプリミティブ行列の諸カスケードの前記シーケンスを決定するよう補間を実行することによることを含む、段階
とをさらに含む、付番実施例１記載の方法。
〔付番実施例８〕
前記プログラムが、少なくとも一つのオブジェクト・チャネルおよび少なくとも一つのオブジェクトの軌跡を示すデータを含むオブジェクト・ベースのオーディオ・プログラムである、付番実施例１記載の方法。
〔付番実施例９〕
プリミティブ行列の前記第一のカスケードはシード・プリミティブ行列を実装し、前記補間値は前記シード・プリミティブ行列についてのシード・デルタ行列を示す、付番実施例１記載の方法。
〔付番実施例１０〕
前記プログラムのオーディオ・コンテンツまたはエンコードされたコンテンツの、M1個のスピーカー・チャネルへの時間変化するダウンミックスA2(t)も、前記時間区間上で指定されており、M1はM未満の整数であり、当該方法は：
前記オーディオ・コンテンツまたはエンコードされたコンテンツのM1個のチャネルのサンプルに適用されるときに前記プログラムのオーディオ・コンテンツの前記M1個のスピーカー・チャネルへのダウンミックスを実装するM1×M1プリミティブ行列の第二のカスケードを決定する段階であって、前記ダウンミックスは、該ダウンミックスが少なくとも実質的にA2(t1)に等しいという意味で前記時間変化する混合A2(t)に整合する、段階と；
M1×M1プリミティブ行列の前記第二のカスケードおよび前記部分区間上で定義された第二の補間関数とともに、更新されたM1×M1プリミティブ行列の諸カスケードのシーケンスを示す追加的補間値を決定する段階であって、更新されたM1×M1プリミティブ行列の各カスケードは、前記オーディオ・コンテンツまたは前記エンコードされたコンテンツのM1個のチャネルのサンプルに適用されるとき、前記プログラムのオーディオ・コンテンツの前記M1個のスピーカー・チャネルへの、前記部分区間における異なる時刻に関連付けられた更新されたダウンミックスを実装し、それぞれの前記更新されたダウンミックスは、前記時間変化する混合A2(t)と整合し、前記エンコードされたビットストリームは前記追加的補間値およびM1×M1プリミティブ行列の前記第二のカスケードを示す、段階とをさらに含む、
付番実施例４記載の方法。
〔付番実施例１１〕
前記エンコードされたビットストリームが前記第二の補間関数をも示す、付番実施例１０記載の方法。
〔付番実施例１２〕
前記ダウンミックス指定A2(t)における時間変動は、指定されたダウンミックスのクリップ保護へのランプアップまたは該クリップ保護からのリリースに少なくとも部分的には起因する、付番実施例１０記載の方法。
〔付番実施例１３〕
前記補間値は、Yビットをもって表現可能な正規化されたデルタ値と、このビット数の指示と、精度値とを含み、前記正規化されたデルタ値は、デルタ値の正規化されたバージョンを示し、前記デルタ値は前記プリミティブ行列の係数の変化のレートを示し、前記精度値は、前記プリミティブ行列の係数を表わすために必要とされる精度に対し、前記デルタ値を表わすために必要とされる精度の増大を示す、付番実施例１記載の方法。
〔付番実施例１４〕
前記デルタ値は、前記正規化されたデルタ値を、前記プリミティブ行列の係数の分解能および前記精度値に依存するスケール因子によってスケーリングすることによって導出される、付番実施例１３記載の方法。
〔付番実施例１５〕
前記プログラムのオーディオ・コンテンツまたはエンコードされたコンテンツの、M1個のスピーカー・チャネルへの時間変化するダウンミックスA2(t)も、前記時間区間上で指定されており、M1はM未満の整数であり、当該方法は：
前記区間内の各時点tにおいて前記エンコードされたオーディオ・コンテンツのM1個のチャネルのサンプルに適用されたときに、前記Nチャネルのオーディオ・プログラムの前記M1個のスピーカー・チャネルへのダウンミックスを実装するM1×M1プリミティブ行列の第二のカスケードを決定する段階であって、前記ダウンミックスは、前記時間変化する混合A2(t)に整合する、段階とをさらに含む、
付番実施例４記載の方法。
〔付番実施例１６〕
前記ダウンミックス指定A2(t)における時間変動は、指定されたダウンミックスのクリップ保護へのランプアップまたは該クリップ保護からのリリースに少なくとも部分的には起因する、付番実施例１５記載の方法。
〔付番実施例１７〕
Nチャネル・オーディオ・プログラムのM個のチャネルの復元のための方法であって、前記プログラムはある時間区間にわたって指定され、前記時間区間は時刻t1から時刻t2までの部分区間を含み、N個のエンコードされた信号チャネルのM個の出力チャネルへの時間変化する混合A(t)は前記時間区間上で指定されており、当該方法は：
エンコードされたオーディオ・コンテンツ、補間値およびN×Nプリミティブ行列の第一のカスケードを示すエンコードされたビットストリームを取得する段階と；
前記補間値、プリミティブ行列の前記第一のカスケードおよび前記部分区間上の補間関数から、N×Nの更新されたプリミティブ行列の諸カスケードのシーケンスを決定するよう補間を実行する段階とを含み、
N×Nプリミティブ行列の前記第一のカスケードは、前記エンコードされたオーディオ・コンテンツのN個のエンコードされた信号チャネルのサンプルに適用されるときに前記N個のエンコードされた信号チャネルのオーディオ・コンテンツの前記M個の出力チャネルへの第一の混合を実装するものであり、前記第一の混合は、該第一の混合が少なくとも実質的にA(t1)に等しいという意味で前記時間変化する混合A(t)に整合し、
プリミティブ行列の前記第一のカスケードおよび前記補間関数とともに、前記補間値は、N×Nの更新されたプリミティブ行列の諸カスケードのシーケンスを示し、更新されたプリミティブ行列の各カスケードは、前記エンコードされたオーディオ・コンテンツの前記N個のエンコードされた信号チャネルのサンプルに適用されるとき、前記N個のエンコードされた信号チャネルの前記M個の出力チャネルへの、前記部分区間における異なる時刻に関連付けられた更新された混合を実装し、それぞれの前記更新された混合は、前記時間変化する混合A(t)と整合する、
方法。
〔付番実施例１８〕
前記プリミティブ行列のそれぞれが単位プリミティブ行列である、付番実施例１７記載の方法。
〔付番実施例１９〕
前記エンコードされたオーディオ・コンテンツは、前記プログラムのN個のチャネルのサンプルに対して行列演算を実行することによって生成されたものであり、該生成は、該サンプルに行列カスケードのシーケンスを適用することによることを含み、前記シーケンスにおける各行列カスケードはプリミティブ行列のカスケードであり、行列カスケードの前記シーケンスは、前記第一のカスケードの前記プリミティブ行列の逆行列のカスケードである第一の逆行列カスケードを含む、付番実施例１８記載の方法。
〔付番実施例２０〕
前記エンコードされたオーディオ・コンテンツは、前記プログラムのN個のチャネルのサンプルに対して行列演算を実行することによって生成されたものであり、該生成は、該サンプルに行列カスケードのシーケンスを適用することによることを含み、前記シーケンスにおける各行列カスケードはプリミティブ行列のカスケードであり、前記シーケンスにおける各行列カスケードは、N×Nの更新されたプリミティブ行列のカスケードの対応するカスケードの逆であり、N＝Mであり、前記M個の出力チャネルは無損失で復元された前記プログラムの前記N個のチャネルと同じである、付番実施例１８記載の方法。
〔付番実施例２１〕
前記プログラムのオーディオ・コンテンツまたはエンコードされたコンテンツのM1個のスピーカー・チャネルへの時間変化するダウンミックスA2(t)も前記時間区間上で指定されており、M1はN未満の整数であり、当該方法は、
M1×M1プリミティブ行列の第二のカスケードを受領する段階と；
前記区間内の各時点においてM1×M1の前記第二のカスケードを前記エンコードされたオーディオ・コンテンツのM1個のチャネルのサンプルに適用して、前記Nチャネル・オーディオ・プログラムの前記M1個のスピーカー・チャネルへのダウンミックスを実装する段階であって、前記ダウンミックスは、前記時間変化する混合A2(t)と整合する、段階とをさらに含む、
付番実施例２０記載の方法。
〔付番実施例２２〕
前記ダウンミックス指定A2(t)における時間変動は、指定されたダウンミックスのクリップ保護へのランプアップまたは該クリップ保護からのリリースに少なくとも部分的には起因する、付番実施例２１記載の方法。
〔付番実施例２３〕
前記エンコードされたビットストリームが前記補間関数をも示す、付番実施例１７記載の方法。
〔付番実施例２４〕
前記プログラムが、少なくとも一つのオブジェクト・チャネルおよび少なくとも一つのオブジェクトの軌跡を示すデータを含むオブジェクト・ベースのオーディオ・プログラムである、付番実施例１７記載の方法。
〔付番実施例２５〕
プリミティブ行列の前記第一のカスケードはシード・プリミティブ行列を実装し、前記補間値は前記シード・プリミティブ行列についてのシード・デルタ行列を示す、付番実施例１７記載の方法。
〔付番実施例２６〕
当該方法がさらに：
前記エンコードされたオーディオ・コンテンツのサンプルに、更新されたN×Nプリミティブ行列の前記カスケードのうちの少なくとも一つを適用する段階であって、前記エンコードされたオーディオ・コンテンツの前記サンプルに、シード・プリミティブ行列およびシード・デルタ行列を別個に適用して変換されたサンプルを生成し、該変換されたサンプルを前記補間関数に従って線形結合し、それにより前記Nチャネル・オーディオ・プログラムの前記M個のチャネルのサンプルを示す復元されたサンプルを生成することによることを含む、段階をさらに含む、
付番実施例１７記載の方法。
〔付番実施例２７〕
前記補間関数が前記エンコードされたビットストリームのいくつかの区間にわたって実質的に一定であり、N×Nの更新されたプリミティブ行列の前記カスケードのうちの各最も最近更新されたものは、前記エンコードされたビットストリームの、前記補間関数が実質的に一定でない区間の間にのみ補間によって更新される、付番実施例１７記載の方法。
〔付番実施例２８〕
前記補間値は、Yビットをもって表現可能な正規化されたデルタ値と、精度のこのビット数の指示と、精度値とを含み、前記正規化されたデルタ値は、デルタ値の正規化されたバージョンを示し、前記デルタ値は前記プリミティブ行列の係数の変化のレートを示し、前記精度値は、前記プリミティブ行列の係数を表わすために必要とされる精度に対し、前記デルタ値を表わすために必要とされる精度の増大を示す、付番実施例１７記載の方法。
〔付番実施例２９〕
前記デルタ値は、前記正規化されたデルタ値を、前記プリミティブ行列の係数の分解能および前記精度値に依存するスケール因子によってスケーリングすることによって導出される、付番実施例２８記載の方法。
〔付番実施例３０〕
前記Nチャネル・プログラムの、M1個のスピーカー・チャネルへの時間変化するダウンミックスA2(t)も、前記時間区間上で指定されており、M1はN未満の整数であり、当該方法は：
M1×M1プリミティブ行列の第二のカスケードおよび補間値の第二の集合を受領する段階と；
M1×M1プリミティブ行列の前記第二のカスケードを前記エンコードされたオーディオ・コンテンツのM1個のチャネルのサンプルに適用して、前記Nチャネル・プログラムのM1個のスピーカー・チャネルへのダウンミックスを実装する段階であって、該ダウンミックスは、該ダウンミックスが少なくとも実質的にA2(t1)に等しいという意味で、前記時間変化する混合A2(t)とと整合する、段階と；
補間値の前記第二の集合、M1×M1プリミティブ行列の前記第二のカスケードおよび前記部分区間上で定義されている第二の補間関数を適用して、更新されたM1×M1プリミティブ行列の諸カスケードのシーケンスを得る段階と；
前記更新されたM1×M1プリミティブ行列を前記エンコードされたコンテンツの前記M1個のチャネルのサンプルに適用して、前記Nチャネル・プログラムの、前記部分区間における異なる時刻に関連付けられた少なくとも一つの更新されたダウンミックスを実装する段階であって、それぞれの前記更新されたダウンミックスは前記時間変化する混合A2(t)と整合する、段階とをさらに含む、
付番実施例２０記載の方法。
〔付番実施例３１〕
前記プリミティブ行列のそれぞれが単位プリミティブ行列である、付番実施例３０記載の方法。
〔付番実施例３２〕
前記エンコードされたビットストリームが前記第二の補間関数をも示す、付番実施例３０記載の方法。
〔付番実施例３３〕
当該方法がさらに：
前記エンコードされたオーディオ・コンテンツの、または前記エンコードされたオーディオ・コンテンツから決定されたオーディオ・サンプルに、更新されたM1×M1プリミティブ行列の前記カスケードのうちの少なくとも一つを適用する段階であって、前記オーディオ・サンプルに、シード・プリミティブ行列およびシード・デルタ行列を別個に適用して変換されたサンプルを生成し、該変換されたサンプルを前記補間関数に従って線形結合することによることを含む、段階をさらに含む、
付番実施例３０記載の方法。
〔付番実施例３４〕
前記第二の補間関数が前記エンコードされたビットストリームのいくつかの区間にわたって実質的に一定であり、M1×M1の更新されたプリミティブ行列の前記カスケードのうちの各最も最近更新されたものは、前記エンコードされたビットストリームの、前記補間関数が実質的に一定でない区間の間にのみ補間によって更新される、付番実施例３０記載の方法。
〔付番実施例３５〕
前記ダウンミックス指定A2(t)における時間変動は、指定されたダウンミックスのクリップ保護へのランプアップまたは該クリップ保護からのリリースに少なくとも部分的には起因する、付番実施例３０記載の方法。
〔付番実施例３６〕
前記エンコードされたビットストリームから検査語を抽出し、前記オーディオ・プログラムのセグメントの諸チャネルが正しく復元されているかどうかを、前記行列乗算サブシステムによって生成されるオーディオ・サンプルから導出される第二の検査語を、前記エンコードされたビットストリームから抽出された前記検査語と比較することによって、検証する段階をさらに含む、付番実施例１７記載の方法。
〔付番実施例３７〕
Nチャネルのオーディオ・プログラムをエンコードするよう構成されたオーディオ・エンコーダであって、前記プログラムはある時間区間にわたって指定され、前記時間区間は時刻t1から時刻t2までの部分区間を含み、N個のエンコードされた信号チャネルのM個の出力チャネルへの時間変化する混合A(t)が前記時間区間上で指定されており、MはN以下であり、当該エンコーダは：
前記N個のエンコードされた信号チャネルのサンプルに適用されるときに前記N個のエンコードされた信号チャネルのオーディオ・コンテンツの前記M個の出力チャネルへの第一の混合を実装するN×Nプリミティブ行列の第一のカスケードを決定する段階であって、前記第一の混合は、該第一の混合が少なくとも実質的にA(t1)に等しいという意味で前記時間変化する混合A(t)に整合する、段階と、
プリミティブ行列の前記第一のカスケードおよび前記部分区間上で定義される補間関数とともに、N×Nの更新されたプリミティブ行列の諸カスケードのシーケンスを示す補間値を決定する段階であって、更新されたプリミティブ行列の各カスケードは、前記N個のエンコードされた信号チャネルのサンプルに適用されるとき、前記N個のエンコードされた信号チャネルの前記M個の出力チャネルへの、前記部分区間における異なる時刻に関連付けられた更新された混合を実装し、それぞれの前記更新された混合は、前記時間変化する混合A(t)と整合する、段階とを実行するよう結合され、構成された第一のサブシステムと；
エンコードされたオーディオ・コンテンツ、前記補間値およびプリミティブ行列の前記第一のカスケードを示すエンコードされたビットストリームを生成するよう構成された、前記第一のサブシステムに結合された第二のサブシステムとを含む、
エンコーダ。
〔付番実施例３８〕
前記プリミティブ行列のそれぞれが単位プリミティブ行列である、付番実施例３７記載のエンコーダ。
〔付番実施例３９〕
前記プログラムのN個のチャネルのサンプルに対して行列演算を実行することによって、前記エンコードされたオーディオ・コンテンツを生成する段階であって、前記サンプルに行列カスケードのシーケンスを適用することによることを含む、段階を実行するよう構成された、前記第二のサブシステムに結合された第三のサブシステムをさらに含み、前記シーケンスにおける各行列カスケードは、プリミティブ行列のカスケードであり、行列カスケードの前記シーケンスは、前記第一のカスケードのプリミティブ行列の逆行列のカスケードである第一の逆行列カスケードを含む、付番実施例３８記載のエンコーダ。
〔付番実施例４０〕
前記プログラムのN個のチャネルのサンプルに対して行列演算を実行することによって、前記エンコードされたオーディオ・コンテンツを生成する段階であって、前記サンプルに行列カスケードのシーケンスを適用することによることを含む、段階を実行するよう構成された、前記第二のサブシステムに結合された第三のサブシステムをさらに含み、前記シーケンスにおける各行列カスケードは、プリミティブ行列のカスケードであり、前記シーケンスにおける各行列カスケードは、N×Nの更新されたプリミティブ行列のカスケードの対応するカスケードの逆であり、N＝Mであり、前記M個の出力チャネルは無損失で復元された前記プログラムの前記N個のチャネルと同じである、付番実施例３８記載のエンコーダ。
〔付番実施例４１〕
前記エンコードされたビットストリームが前記補間関数をも示す、付番実施例３７記載のエンコーダ。
〔付番実施例４２〕
前記プログラムが、少なくとも一つのオブジェクト・チャネルおよび少なくとも一つのオブジェクトの軌跡を示すデータを含むオブジェクト・ベースのオーディオ・プログラムである、付番実施例３７記載のエンコーダ。
〔付番実施例４３〕
プリミティブ行列の前記第一のカスケードはシード・プリミティブ行列を実装し、前記補間値は前記シード・プリミティブ行列についてのシード・デルタ行列を示す、付番実施例３７記載のエンコーダ。
〔付番実施例４４〕
前記プログラムのオーディオ・コンテンツまたはエンコードされたコンテンツの、M1個のスピーカー・チャネルへの時間変化するダウンミックスA2(t)も、前記時間区間上で指定されており、M1はM未満の整数であり、
前記第一のサブシステムは、前記オーディオ・コンテンツまたはエンコードされたコンテンツのM1個のチャネルのサンプルに適用されるときに前記プログラムのオーディオ・コンテンツの前記M1個のスピーカー・チャネルへのダウンミックスを実装するM1×M1プリミティブ行列の第二のカスケードを決定する段階であって、前記ダウンミックスは、該ダウンミックスが少なくとも実質的にA2(t1)に等しいという意味で前記時間変化する混合A2(t)に整合する、段階と、M1×M1プリミティブ行列の前記第二のカスケードおよび前記部分区間上で定義された第二の補間関数とともに、更新されたM1×M1プリミティブ行列の諸カスケードのシーケンスを示す追加的補間値を決定する段階であって、更新されたM1×M1プリミティブ行列の各カスケードは、前記オーディオ・コンテンツまたは前記エンコードされたコンテンツのM1個のチャネルのサンプルに適用されるとき、前記プログラムのオーディオ・コンテンツの前記M1個のスピーカー・チャネルへの、前記部分区間における異なる時刻に関連付けられた更新されたダウンミックスを実装し、それぞれの前記更新されたダウンミックスは、前記時間変化する混合A2(t)と整合する、段階とを実行するよう構成されており、
前記第二のサブシステムは、前記エンコードされたビットストリームを、前記追加的補間値およびM1×M1プリミティブ行列の前記第二のカスケードを示すように生成するよう構成されている、
付番実施例４０記載のエンコーダ。
〔付番実施例４５〕
前記第二のサブシステムが、前記エンコードされたビットストリームを、前記第二の補間関数をも示すように生成するよう構成されている、付番実施例４４記載のエンコーダ。
〔付番実施例４６〕
前記補間値は、Yビットをもって表現可能な正規化されたデルタ値と、精度のこのビット数の指示と、精度値とを含み、前記正規化されたデルタ値は、デルタ値の正規化されたバージョンを示し、前記デルタ値は前記プリミティブ行列の係数の変化のレートを示し、前記精度値は、前記プリミティブ行列の係数を表わすために必要とされる精度に対し、前記デルタ値を表わすために必要とされる精度の増大を示す、付番実施例３７記載のエンコーダ。
〔付番実施例４７〕
前記デルタ値は、前記正規化されたデルタ値を、前記プリミティブ行列の係数の分解能および前記精度値に依存するスケール因子によってスケーリングすることによって導出される、付番実施例４６記載のエンコーダ。
〔付番実施例４８〕
Nチャネル・オーディオ・プログラムの復元を実装するよう構成されたデコーダであって、前記プログラムはある時間区間にわたって指定され、前記時間区間は時刻t1から時刻t2までの部分区間を含み、N個のエンコードされた信号チャネルのM個の出力チャネルへの時間変化する混合A(t)は前記時間区間上で指定されており、当該デコーダは：
エンコードされたビットストリームから、エンコードされたオーディオ・コンテンツ、補間値およびN×Nプリミティブ行列の第一のカスケードを抽出するよう結合され、構成されたパース・サブシステムと；
前記補間値、N×Nプリミティブ行列の前記第一のカスケードおよび前記部分区間上の補間関数から、N×Nの更新されたプリミティブ行列の諸カスケードのシーケンスを決定するよう結合され、構成された補間サブシステムとを含み、
N×Nプリミティブ行列の前記第一のカスケードは、前記エンコードされたオーディオ・コンテンツのN個のエンコードされた信号チャネルのサンプルに適用されるときに前記N個のエンコードされた信号チャネルのオーディオ・コンテンツの前記M個の出力チャネルへの第一の混合を実装するものであり、前記第一の混合は、該第一の混合が少なくとも実質的にA(t1)に等しいという意味で前記時間変化する混合A(t)に整合し、
N×Nの更新されたプリミティブ行列の各カスケードは、前記エンコードされたオーディオ・コンテンツの前記N個のエンコードされた信号チャネルのサンプルに適用されるとき、前記N個のエンコードされた信号チャネルの前記M個の出力チャネルへの、前記部分区間における異なる時刻に関連付けられた更新された混合を実装し、それぞれの前記更新された混合は、前記時間変化する混合A(t)と整合する、
デコーダ。
〔付番実施例４９〕
N×Nプリミティブ行列の前記第一のカスケードおよびN×Nの更新されたプリミティブ行列の各カスケードを、前記エンコードされたオーディオ・コンテンツに逐次的に適用して、前記N個チャネル・オーディオ・プログラムの少なくともあるセグメントの前記N個のチャネルを無損失に復元するよう構成された、前記補間サブシステムおよび前記パース・サブシステムに結合された行列乗算サブシステムをさらに含む、付番実施例４８記載のデコーダ。
〔付番実施例５０〕
前記プリミティブ行列のそれぞれが単位プリミティブ行列である、付番実施例４８記載のデコーダ。
〔付番実施例５１〕
前記エンコードされたビットストリームが前記補間関数をも示し、前記パース・サブシステムは、エンコードされたビットストリームから、前記補間関数を示すデータを抽出するよう構成されている、付番実施例４８記載のデコーダ。
〔付番実施例５２〕
前記プログラムが、少なくとも一つのオブジェクト・チャネルおよび少なくとも一つのオブジェクトの軌跡を示すデータを含むオブジェクト・ベースのオーディオ・プログラムである、付番実施例４８記載のデコーダ。
〔付番実施例５３〕
N×Nプリミティブ行列の前記第一のカスケードはシード・プリミティブ行列を実装し、前記補間値は前記シード・プリミティブ行列についてのシード・デルタ行列を示す、付番実施例４８記載のデコーダ。
〔付番実施例５４〕
前記補間値は、Yビットをもって表現可能な正規化されたデルタ値と、精度のこのビット数の指示と、精度値とを含み、前記正規化されたデルタ値は、デルタ値の正規化されたバージョンを示し、前記デルタ値は前記プリミティブ行列の係数の変化のレートを示し、前記精度値は、前記プリミティブ行列の係数を表わすために必要とされる精度に対し、前記デルタ値を表わすために必要とされる精度の増大を示す、付番実施例４８記載のデコーダ。
〔付番実施例５５〕
前記デルタ値は、前記正規化されたデルタ値を、前記プリミティブ行列の係数の分解能および前記精度値に依存するスケール因子によってスケーリングすることによって導出される、付番実施例５４記載のデコーダ。
〔付番実施例５６〕
前記Nチャネルのオーディオ・プログラムのダウンミックスを復元するようにも構成されている付番実施例４９記載のデコーダであって、前記Nチャネル・プログラムの、M1個のスピーカー・チャネルへの時間変化するダウンミックスA2(t)も、前記時間区間上で指定されており、M1はN未満の整数であり、
前記パース・サブシステムは、前記エンコードされたビットストリームから、M1×M1プリミティブ行列の第二のカスケードおよび補間値の第二の集合を抽出するよう構成されており、
前記行列乗算サブシステムは、M1×M1プリミティブ行列の前記第二のカスケードを前記エンコードされたオーディオ・コンテンツのM1個のチャネルのサンプルに適用して、前記Nチャネル・プログラムのM1個のスピーカー・チャネルへのダウンミックスを実装するよう結合され、構成されており、該ダウンミックスは、該ダウンミックスが少なくとも実質的にA2(t1)に等しいという意味で、前記時間変化する混合A2(t)とと整合し、
前記補間サブシステムは、補間値の前記第二の集合、M1×M1プリミティブ行列の前記第二のカスケードおよび前記部分区間上で定義されている第二の補間関数を適用して、更新されたM1×M1プリミティブ行列の諸カスケードのシーケンスを得るよう構成されており、
前記行列乗算サブシステムは、前記更新されたM1×M1プリミティブ行列を前記エンコードされたコンテンツの前記M1個のチャネルのサンプルに適用して、前記Nチャネル・プログラムの、前記部分区間における異なる時刻に関連付けられた少なくとも一つの更新されたダウンミックスを実装するよう結合され、構成されており、それぞれの前記更新されたダウンミックスは前記時間変化する混合A2(t)と整合する、
付番実施例４９記載のデコーダ。
〔付番実施例５７〕
前記プリミティブ行列のそれぞれが単位プリミティブ行列である、付番実施例５６記載のデコーダ。
〔付番実施例５８〕
前記エンコードされたビットストリームが前記補間関数をも示し、前記パース・サブシステムは、エンコードされたビットストリームから、前記補間関数を示すデータを抽出するよう較正されている、付番実施例４８記載のデコーダ。
〔付番実施例５９〕
前記プログラムが、少なくとも一つのオブジェクト・チャネルおよび少なくとも一つのオブジェクトの軌跡を示すデータを含むオブジェクト・ベースのオーディオ・プログラムである、付番実施例４８記載のデコーダ。
〔付番実施例６０〕
N×Nプリミティブ行列の前記第一のカスケードはシード・プリミティブ行列を実装し、前記補間値は前記シード・プリミティブ行列についてのシード・デルタ行列を示す、付番実施例４８記載のデコーダ。
〔付番実施例６１〕
前記パース・サブシステムは、前記エンコードされたビットストリームから検査語を抽出するよう構成されており、前記行列乗算サブシステムは、前記Nチャネル・オーディオ・プログラムの前記セグメントの前記N個のチャネルが正しく復元されているかどうかを、前記行列乗算サブシステムによって生成されるオーディオ・サンプルから導出される第二の検査語を、前記エンコードされたビットストリームから抽出された前記検査語と比較することによって、検証するよう構成されている、付番実施例４９記載のデコーダ。
【図１】
0006388924.tif 000015
【図２】
0006388924.tif 000016
【図３】
0006388924.tif 000017
【図４】
0006388924.tif 000018
【図５】
0006388924.tif 000019
【図６】
0006388924.tif 000020
【図７】
0006388924.tif 000021