JP2016513811A - 変換球面調和係数 - Google Patents

変換球面調和係数 Download PDF

Info

Publication number
JP2016513811A
JP2016513811A JP2015560355A JP2015560355A JP2016513811A JP 2016513811 A JP2016513811 A JP 2016513811A JP 2015560355 A JP2015560355 A JP 2015560355A JP 2015560355 A JP2015560355 A JP 2015560355A JP 2016513811 A JP2016513811 A JP 2016513811A
Authority
JP
Japan
Prior art keywords
sound field
bitstream
hierarchical elements
information
describing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2015560355A
Other languages
English (en)
Other versions
JP2016513811A5 (ja
Inventor
セン、ディパンジャン
モーレール、マーティン・ジェームズ
ペーターズ、ニルス・グンサー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2016513811A publication Critical patent/JP2016513811A/ja
Publication of JP2016513811A5 publication Critical patent/JP2016513811A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/008Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/167Audio streaming, i.e. formatting and decoding of an encoded audio signal representation into a data stream for transmission or storage purposes
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/018Audio watermarking, i.e. embedding inaudible data in the audio signal
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/20Vocoders using multiple modes using sound class specific coding, hybrid encoders or object based coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S2420/00Techniques used stereophonic systems covered by H04S but not provided for in its groups
    • H04S2420/11Application of ambisonics in stereophonic audio systems

Abstract

一般に、球面調和係数を変換するための技法が説明される。1つまたは複数のプロセッサを備えるデバイスは、この技法を実行することができる。プロセッサは、音場について説明するのに関連する情報を提供する複数の階層的な要素の数を減少させるために音場がどのように変換されたかについて説明する変換情報を決定するためにビットストリームを解析するように構成され得る。プロセッサは、音場について説明するのに関連する情報を提供する複数の階層的な要素に基づいて音場を再現するとき、複数の階層的な要素の数を減少させるために実行された変換を逆にするために変換情報に基づいて音場を変換するようにさらに構成され得る。

Description

[0001]本出願は、2013年3月1日に出願された米国仮特許出願第61/771,677号および2013年7月30日に出願された米国仮特許出願第61/860,201号の利益を主張するものである。
[0002]本開示は、オーディオコーディングに関し、より具体的には、コード化されたオーディオデータを指定するビットストリームに関する。
[0003]高次アンビソニックス(HOA)信号(複数の球面調和係数(SHC)または他の階層的な要素によって表されることが多い)は、音場の三次元的表現である。このHOA表現またはSHC表現は、このSHC信号からレンダリングされるマルチチャンネルオーディオ信号を再生するために使用されるローカルスピーカーの幾何学的配置とは無関係な様式で、この音場を表すことができる。このSHC信号は、5.1オーディオチャンネルフォーマットまたは7.1オーディオチャンネルフォーマットなどのよく知られており広く採用されているマルチチャンネルフォーマットにレンダリングされるので、このSHC信号はまた、下位互換性を促進することができる。したがって、SHC表現は、下位互換性にも対応する、音場のより優れた表現を可能にすることができる。
[0004]一般に、オーディオデータを表すビットストリーム内のオーディオ情報を知らせるための、およびオーディオデータに関する変換を実行するための様々な技法が説明される。いくつかの態様では、高次アンビソニックス(HOA)係数(これは、球面調和係数とも呼ばれることがある)などの複数の階層的な要素のうちの非ゼロサブセットのどれがビットストリームに含まれるか知らせるための技法が説明される。HOA係数のうちいくつかが、音場について説明するのに関連する情報を提供しないことがあることを考えると、オーディオエンコーダは、複数のHOA係数を、音場について説明するのに関連する情報を提供するHOA係数の非ゼロサブセットに減少させ、それによって、コード化効率を増加させることがある。その結果、技法の様々な態様は、HOA係数および/またはその符号化されたバージョン、ビットストリームに実際に含まれるHOA係数のうちHOA係数(たとえば、HOA係数のうち少なくとも1つを含むが係数のすべてを含むとは限らないHOA係数の非ゼロサブセット)を含むビットストリーム内で指定することを可能にすることができる。HOA係数のサブセットを識別する情報は、前述のようにビットストリーム内で指定されてもよいし、いくつかの例では、サイドチャンネル情報内で指定されてもよい。
[0005]他の態様では、ビットストリーム内で指定されるいくつかのSHCを減少させ、それによって、コーディング効率を増加させるようにSHCを変換するための技法が説明される。すなわち、この技法は、何らかの形態の線形可逆変換(linear invertible transform)をSHCに対して実行することができ、その結果、ビットストリーム内で指定されるSHCの数を減少させる。線形可逆変換の例としては、回転、平行移動、離散コサイン変換(DCT)、離散フーリエ変換(DFT)、およびベクトルベースの分解がある。ベクトルベースの分解は、球面調和関数領域から別の領域へのSHCの変換を伴うことがある。ベクトルベースの分解の例としては、特異値分解(SVD)、主成分分析(PCA)、およびカルーネン−レーベ変換(KLT)があり得る。技法は、次いで、SHCに対して実行された変換を識別する「変換情報」を指定することができる。たとえば、回転がSHCに対して実行されとき、技法は、回転を識別する回転情報(回転の様々な角度に関することが多い)を指定することを提供することができる。別の例としてSVDが実行されるとき、技法は、SVDが実行されたことを示すフラグを提供することができる。
[0006]一例では、オーディオコンテンツを表すビットストリームを生成する方法は、ビットストリーム内で、ビットストリームに含まれる音場について説明する複数の階層的な要素を識別することと、ビットストリーム内で、識別された複数の階層的な要素を指定することとを備える。
[0007]別の例では、オーディオコンテンツを表すビットストリームを生成するように構成されたデバイスは、ビットストリーム内で、ビットストリームに含まれる音場について説明する複数の階層的な要素を識別し、ビットストリーム内で、識別された複数の階層的な要素を指定するように構成された1つまたは複数のプロセッサを備える。
[0008]別の例では、オーディオコンテンツを表すビットストリームを生成するように構成されたデバイス、方法は、ビットストリーム内で、ビットストリームに含まれる音場について説明する複数の階層的な要素を識別するための手段と、ビットストリーム内で、識別された複数の階層的な要素を指定するための手段とを備える。
[0009]別の例では、非一時的コンピュータ可読記憶媒体は、実行されると、1つまたは複数のプロセッサに、ビットストリーム内で、ビットストリームに含まれる音場について説明する複数の階層的な要素を識別させ、ビットストリーム内で、識別された複数の階層的な要素を指定させる命令を記憶させている。
[0010]別の例では、オーディオコンテンツを表すビットストリームを処理する方法は、ビットストリーム内で、ビットストリームに含まれる音場について説明する複数の階層的な要素を識別することと、識別された複数の階層的な要素を決定するためにビットストリームを解析することとを備える。
[0011]別の例では、オーディオコンテンツを表すビットストリームを処理するように構成されたデバイスは、1つまたは複数のプロセッサが、ビットストリームから、ビットストリームに含まれる音場について説明する複数の階層的な要素を識別し、識別された複数の階層的な要素を決定するためにビットストリームを解析するように構成されるを備える。
[0012]別の例では、オーディオコンテンツを表すビットストリームを処理するように構成されたデバイスは、ビットストリームから、ビットストリームに含まれる音場について説明する複数の階層的な要素を識別するための手段と、識別された複数の階層的な要素を決定するために前記ビットストリームを解析するための手段とを備える。
[0013]別の例では、非一時的コンピュータ可読記憶媒体は、実行されると、1つまたは複数のプロセッサに、ビットストリームから、ビットストリームに含まれる音場について説明する複数の階層的な要素を識別させ、識別された複数の階層的な要素を決定するためにビットストリームを解析させる命令をその上に記憶させている。
[0014]別の例では、音場について説明する複数の階層的な要素からなるビットストリームを生成する方法は、音場について説明するのに関連する情報を提供する複数の階層的な要素の数を減少させるために音場を変換することと、音場がどのように変換されたかについて説明する変換情報をビットストリーム内で指定することとを備える。
[0015]別の例では、音場について説明する複数の階層的な要素からなるビットストリームを生成するように構成されたデバイスは、音場について説明するのに関連する情報を提供する複数の階層的な要素の数を減少させるために音場を変換し、音場がどのように変換されたかについて説明する変換情報をビットストリーム内で指定するように構成された1つまたは複数のプロセッサを備える。
[0016]別の例では、音場について説明する複数の階層的な要素からなるビットストリームを生成するように構成されたデバイスは、音場について説明するのに関連する情報を提供する複数の階層的な要素の数を減少させるために音場を変換するための手段と、音場がどのように変換されたかについて説明する変換情報をビットストリーム内で指定するための手段とを備える。
[0017]別の例では、実行されると、1つまたは複数のプロセッサに、音場について説明するのに関連する情報を提供する複数の階層的な要素の数を減少させるために音場を変換させ、音場がどのように変換されたかについて説明する変換情報をビットストリーム内で指定させる命令をその上に記憶させた非一時的コンピュータ可読記憶媒体。
[0018]別の例では、音場について説明する複数の階層的な要素からなるビットストリームを処理する方法は、音場について説明するのに関連する情報を提供する複数の階層的な要素の数を減少させるように音場がどのように変換されたか説明する変換情報を決定するためにビットストリームを解析することと、音場について説明するのに関連する情報を提供する複数の階層的な要素の数のうち要素に基づいて音場を再現するとき、複数の階層的な要素の数を減少させるように変換情報を逆にするために変換情報に基づいて音場を変換することとを備える。
[0019]別の例では、音場について説明する複数の階層的な要素からなるビットストリームを処理するように構成されたデバイスは、音場について説明するのに関連する情報を提供する複数の階層的な要素の数を減少させるように音場がどのように変換されたか説明する変換情報を決定するためにビットストリームを解析し、音場について説明するのに関連する情報を提供する複数の階層的な要素の数のうち要素に基づいて音場を再現するとき、複数の階層的な要素の数を減少させるように変換情報を逆にするために変換情報に基づいて音場を変換するように構成された1つまたは複数のプロセッサを備える。
[0020]別の例では、音場について説明する複数の階層的な要素からなるビットストリームを処理するように構成されたデバイスは、音場について説明するのに関連する情報を提供する複数の階層的な要素の数を減少させるように音場がどのように変換されたか説明する変換情報を決定するためにビットストリームを解析するための手段と、音場について説明するのに関連する情報を提供する複数の階層的な要素の数のうち要素に基づいて音場を再現するとき、複数の階層的な要素の数を減少させるように変換情報を逆にするために変換情報に基づいて音場を変換するための手段を備える。
[0021]別の例では、非一時的コンピュータ可読記憶媒体は、実行されると、1つまたは複数のプロセッサに、音場について説明するのに関連する情報を提供する複数の階層的な要素の数を減少させるように音場がどのように変換されたか説明する変換情報を決定するためにビットストリームを解析させ、音場について説明するのに関連する情報を提供する複数の階層的な要素の数のうち要素に基づいて音場を再現するとき、変換情報に基づいて音場を変換させる命令をその上に記憶させている。
[0022]技法の1つまたは複数の態様の詳細は、添付の図面および以下の説明に記載される。これらの技法の他の特徴、目的、および利点は、説明および図面から、ならびに特許請求の範囲から、明らかになろう。
[0023]様々な次数および副次数の球面調和基底関数を示す図。 様々な次数および副次数の球面調和基底関数を示す図。 [0024]本開示において説明される技法の様々な態様を実施し得るシステムを示す図。 [0025]図3の例に示されるビットストリーム生成デバイスの例示的な実装形態を示すブロック図。 図3の例に示されるビットストリーム生成デバイスの例示的な実装形態を示すブロック図。 [0026]音場を回転させるために本開示において説明される技法の様々な態様を実行する一例を示す図。 音場を回転させるために本開示において説明される技法の様々な態様を実行する一例を示す図。 [0027]第1の基準フレームに従って捕捉され、次いで第2の基準フレームに対して音場を表すために本開示において説明される技法に従って回転される例示的な音場を示す図。 [0028]本開示において説明される技法に従って形成されるビットストリームの一例を示す図。 本開示において説明される技法に従って形成されるビットストリームの一例を示す図。 本開示において説明される技法に従って形成されるビットストリームの一例を示す図。 本開示において説明される技法に従って形成されるビットストリームの一例を示す図。 本開示において説明される技法に従って形成されるビットストリームの一例を示す図。 [0029]本開示において説明される技法の回転態様を実行する際の図3のビットストリーム生成デバイスの例示的な動作を示す流れ図。 [0030]本開示において説明される技法の変換態様を実行する際の図3の例に示されるビットストリーム生成デバイスの例示的な動作を示す流れ図。 [0031]本開示において説明される技法の様々な態様を実行する際の抽出デバイスの例示的な動作を示す流れ図。 [0032]本開示において説明される技法の様々な態様を実行する際のビットストリーム生成デバイスおよび抽出デバイスの例示的な動作を示す流れ図。
[0033]音場の展開は、今日の娯楽のための多くの出力フォーマットを利用可能にしてきた。そのようなサラウンドサウンドフォーマットの例は、一般的な5.1フォーマット(これは、フロントレフト(FL)と、フロントライト(FR)と、センターまたはフロントセンターと、バックレフトまたはサラウンドレフトと、バックライトまたはサラウンドライトと、低周波効果(LFE)という、6つのチャンネルを含む)、発展中の7.1フォーマット、および今後来る22.2フォーマット(たとえば、超高精細テレビ規格で使用するための)を含む。さらなる例としては、球面調和配列(spherical harmonic array)のためのフォーマットがある。
[0034]将来のMPEGエンコーダへの入力は、任意選択で、次の3つの可能なフォーマットすなわち(i)あらかじめ指定された位置でラウドスピーカーによって再生されることを意味する、従来のチャンネルベースオーディオ、(ii)(様々な情報の中でも)ロケーション座標を含む関連付けられたメタデータを有する単一オーディオオブジェクトのための離散的なパルス符号変調(PCM)データを含むオブジェクトベースオーディオ、および(iii)球面調和基底関数(「球面調和係数」すなわちSHCとも呼ばれる)の係数を使用して音場を表すことを含むシーンベースオーディオのうち1つである。
[0035]市場には様々な「サラウンドサウンド」フォーマットがある。これらのフォーマットは、たとえば、5.1ホームシアターシステム(リビングルームへの進出を行うという点でステレオ以上に最も成功した)からNHK(Nippon Hoso Kyokaiすなわち日本放送協会)によって開発された22.2システムに及ぶ。コンテンツ作成者(たとえば、ハリウッドスタジオ)は、一度に映画のサウンドトラックを作成することを望み、各々のスピーカー構成のためにサウンドトラックをリミックスする努力を行うことを望まない。最近では、標準化委員会が、標準化されたビットストリームへの符号化と、スピーカーの幾何学的配置およびレンダラの位置における音響条件に適合可能でありそれらに依存しない後続の復号とを提供するための方法を考えている。
[0036]コンテンツ作成者に対するそのような柔軟性を提供するために、階層的な要素のセットが音場を表すために使用され得る。階層的な要素のセットは、モデル化された音場の完全な表現をより低次の要素の基本セットが提供するように要素が順序付けられる、要素のセットを指し得る。このセットはより高次の要素を含むように拡張されるので、表現はより詳細なものになる。
[0037]階層的な要素のセットの一例は、球面調和係数(SHC)のセットである。次の式は、SHCを使用した音場の記述または表現を示す。
Figure 2016513811
この式は、音場の任意の点{rr,θr,φr}における圧力piがSHC
Figure 2016513811
によって一意に表現可能であることを示す。ここで、
Figure 2016513811
、cは音の速さ(約343m/s)、{rr,θr,φr}は基準の点(または観測点)、jn(・)は次数nの球ベッセル関数、
Figure 2016513811
は次数nおよび副次数mの球面調和基底関数である。角括弧内の項は、離散フーリエ変換(DFT)、離散コサイン変換(DCT)、またはウェーブレット変換などの様々な時間周波数変換によって近似可能な信号の周波数領域表現(すなわち、S(ω,rr,θr,φr)である)ことが認識できよう。階層的なセットの他の例は、ウェーブレット変換の係数のセットと、多分解能ベースの関数の係数の他のセットとを含む。
[0038]図1は、ゼロ次(n=0)から第4次(n=4)までの球面調和基底関数を示す図である。理解できるように、各次数に対して、説明を簡単にするために図示されているが図1の例では明示的に示されていない下位次数mの拡張が存在する。
[0039]図2は、ゼロ次(n=0)から第4次(n=4)までの球面調和基底関数を示す別の図である。図2では、球面調和ベースの関数は、示される次数と副次数の両方を伴う3次元座標空間において示される。
[0040]いずれにしても、SHC
Figure 2016513811
は、様々なマイクロフォンアレイ構成によって物理的に取得(たとえば、記録)されることが可能であり、または代替的に、音場のチャンネルベースの記述またはオブジェクトベースの記述から導出されることが可能である。前者は、エンコーダへのシーンベースオーディオ入力を表す。たとえば、1+24(25、したがって第4次)係数を含む第4次の表現が使用され得る。
[0041]これらのSHCがどのようにオブジェクトベースの記述から導出され得るかを例示するために、次の式を考える。個々のオーディオオブジェクトに対応する音場に対する係数
Figure 2016513811

Figure 2016513811
と表され得、ここで、iは
Figure 2016513811

Figure 2016513811
は、次数nの(第2種の)球ハンケル関数、{rs,θs,φs}はオブジェクトのロケーションである。ソースエネルギーg(ω)を(たとえば、PCMストリームに対して高速フーリエ変換を実行するなどの時間周波数分析技法を使用する)周波数の関数と捉えることによって、各PCMオブジェクトとそのロケーションとをSHC
Figure 2016513811
に変換することができる。さらに、各オブジェクトに対する
Figure 2016513811
係数は付加的であることが(上式は線形であり直交方向の分解であるので)示され得る。このようにして、多数のPCMオブジェクトが
Figure 2016513811
係数によって(たとえば、個々のオブジェクトに対する係数ベクトルの和として)表され得る。本質的に、これらの係数は、音場についての情報(3D座標の関数としての圧力)を含み、上記は、観測点{rr,θr,φr}の近傍における、個々のオブジェクトから全体的音場の表現への変換を表す。残りの数字は、以下でオブジェクトベースオーディオコーディングおよびSHCベースオーディオコーディングの文脈で説明される。
[0042]SHCはPCTオブジェクトから導出され得るが、SHCは、次のようにマイクロフォンアレイ記録からも導出され得る。
Figure 2016513811
ただし、
Figure 2016513811

Figure 2016513811
(SHC)の時間領域等価物であり、*は畳込み演算を表し、<,>は内積を表し、bn(ri,t)はriに依存した時間領域フィルタ関数を表し、mi(t)はi番目のマイクロフォン信号であり、ここで、i番目のマイクロフォン変換器は半径ri、仰角角度θi、および方位角角度φiにある。したがって、マイクロフォンアレイ内に32の変換器が存在し、各マイクロフォンが、ri=aが定数である(mhAcousticsのEigenmike EM32デバイス上のマイクロフォンなど)ように球上に位置決めされる場合、25のSHCは、次のように行列演算を使用して導出され得る。
Figure 2016513811
上記の式中の行列は、より一般的にはEs(θ,φ)と呼ばれることがあり、ここで、下付き文字sは、この行列がある特定の変換器セットsに関することを示すことができる。上記の式中の畳込み(*によって示される)は行単位であり、したがって、たとえば、出力
Figure 2016513811
はb0(a,t)とEs(θ,φ)行列の第1の行のベクトル乗算から生じる時系列との間の畳込みおよびマイクロフォン信号の列である(時間の関数につれて変化する−ベクトル乗算の結果か時系列であることを説明する)。算出は、マイクロフォンアレイの変換器位置が、いわゆるT字形設計幾何学的配置(Eigenmike変換器幾何学的配置に極めて近い)にあるとき、最も正確であり得る。T字形設計幾何学的配置の1つの特徴は、幾何学的配置から生じるEs(θ,φ)行列は行儀の非常によい(very well behaved)逆行列(または擬似逆行列)を有すること、さらに、この逆行列は行列Es(θ,φ)の転置によって極めてよく近似され得ることが多いことであり得る。bn(a,t)を用いたフィルタリング動作が無視される場合、この性質によって、SHCからのマイクロフォン信号の復元(すなわち、この例では、[mi(t)]=[Es(θ,φ)]-1[SHC])を可能にすることができる。残りの数字は、以下でSHCベースオーディオコーディングの文脈において説明される。
[0043]一般に、本開示で説明される技法は、球面調和関数領域−空間領域変換および合致する(matching)逆変換の使用によって音場の方向性変換(directional transformation)へのロバストな手法を提供することができる。この音場方向性変換は、回転、傾斜、および転倒(tumble)の手段によって制御され得る。いくつかの例では、新しい係数を生じさせるために所与の次数の係数のみがマージされ、このことは、フィルタが使用されるときに起こり得るなどの次数間依存が存在しないことを意味する。次いで、結果として生じる、球面調和領域と空間領域の間の変換は行列演算として表され得る。その結果、方向性変換は、等しく方向性に変換されたレンダラの使用によって相殺可能であるので、この指向性変換は完全に可逆的であり得る。この方向性変換の1つの適用は、基礎をなす音場を表すために必要とされる球面調和係数の数を減少させることであり得る。この減少は、最大エネルギーの区域を、回転された音場を表すために最も少ない数の球面調和係数を必要とする音場方向と位置合わせすることによって達成され得る。係数の数のなお一層の減少は、エネルギー閾値を用いることによって達成され得る。このエネルギー閾値は、情報の対応する知覚可能な損失なしで、必要とされる係数の数を減少させることができる。これは、冗長なスペクトル情報ではなく冗長な空間情報を除去することによって球面調和関ベースのオーディオ材料の送信(または記憶)を必要とする適用例のために有益なことがある。
[0044]図3は、球面調和係数を使用してオーディオデータを潜在的により効率的に表すために本開示で説明される技法を実行し得るシステム20を示す図である。図3の例に示されるように、システム20は、コンテンツ作成者22と、コンテンツ消費者24とを含む。コンテンツ作成者22およびコンテンツ消費者24の文脈で説明されているが、技法は、オーディオデータを表すビットストリームを形成するためにSHCまたは音場の任意の他の階層的表現が符号化される任意の文脈で実施されてよい。
[0045]コンテンツ作成者22は、コンテンツ消費者24などのコンテンツ消費者による消費のためのマルチチャンネルオーディオコンテンツを生成し得る映画撮影所または他のエンティティを表すことができる。多くの場合、このコンテンツ作成者は、ビデオコンテンツとともに、オーディオコンテンツを生成する。コンテンツ消費者24は、オーディオ再生システムへのアクセス権を所有するまたは有する個人を表し、このオーディオ再生システムは、オーディオコンテンツマルチチャンネルとしての再生のためにSHCをレンダリングすることが可能な任意の形態のオーディオ再生システムを指すことがある。図3の例では、コンテンツ消費者24は、オーディオ再生システム32を含む。
[0046]コンテンツ作成者22は、オーディオ編集システム30を含む。オーディオレンダラ26は、スピーカーフィード(「ラウドスピーカーフィード」、「スピーカー信号」、または「ラウドスピーカー信号」とも呼ばれることがある)をレンダリングまたは生成するオーディオ処理ユニットを表すことができる。各スピーカーフィードは、マルチチャンネルオーディオシステムの特定のチャンネルのための音を再現するスピーカーフィードに対応することができる。図3の例では、レンダラ28は、従来の5.1サラウンドサウンドフォーマットのためのスピーカーフィードをレンダリングし、7.1サラウンドサウンドフォーマット、または22.2サラウンドサウンドフォーマット、5.1サラウンドサウンドスピーカーシステム、7.1サラウンドサウンドスピーカーシステム、または22.2サラウンドサウンドスピーカーシステムにおける5、7、または22のスピーカーの各々のためのスピーカーフィードを生成することができる。代替的に、レンダラ28は、上記で検討したソース球面調和係数の性質が与えられれば、任意の数のスピーカーを有する任意のスピーカー構成のためのソース球面調和係数からスピーカーフィードをレンダリングするように構成され得る。オーディオレンダラ28は、このようにして、図3ではスピーカーフィード29と示されているいくつかのスピーカーフィードを生成することができる。
[0047]コンテンツ作成者は、編集プロセス中に、球面調和係数27(「SHC27」)をレンダリングし、高い忠実度を持たないまたは説得力のあるサラウンドサウンド経験を提供しない音場の面(aspect)を識別しようとするレンダリングされたスピーカーフィードをリッスンすることができる。次いで、コンテンツ作成者22は、(多くの場合、上記で説明された様式でソース球面調和係数が導出され得る異なるオブジェクトの操作によって、間接的に)ソース球面調和係数を編集することができる。コンテンツ作成者22は、球面調和係数27を編集するためにオーディオ編集システム30を用いることができる。オーディオ編集システム30は、オーディオデータを編集し、このオーディオデータを1つまたは複数のソース球面調和係数として出力することが可能な任意のシステムを表す。
[0048]編集プロセスが完了すると、コンテンツ作成者22は、球面調和係数27に基づいてビットストリーム31を生成することができる。すなわち、コンテンツ作成者22は、以下でさらに詳細に説明されるように、たとえば、ワイヤードチャンネルであってもワイヤレスチャンネルであってもデータストレージデバイスなどであってもよい送信チャンネルにまたがる送信のためにビットストリーム31を生成することが可能な任意のデバイスを表すことができるビットストリーム生成デバイス36を含む。いくつかの例では、ビットストリーム生成デバイス36は、帯域幅が(一例として、エントロピー符号化によって)球面調和係数27を圧縮し、ビットストリーム31を形成するために許可されたフォーマットで球面調和係数27のエントロピー符号化されたバージョンを配置するエンコーダを表すことができる。他の例では、ビットストリーム生成デバイス36は、一例としてマルチチャンネルオーディオコンテンツまたはその派生物を圧縮するために従来のオーディオサラウンドサウンド符号化プロセスのプロセスに類似したプロセスを使用してマルチチャンネルオーディオコンテンツ29を符号化するオーディオエンコーダ(おそらく、MPEGサラウンドなどの知られているオーディオコーディング規格またはその派生物に適合するオーディオエンコーダ)を表すことができる。次いで、圧縮されたマルチチャンネルオーディオコンテンツ29は、コンテンツ29を帯域幅圧縮するように何らかの他の方法でエントロピー符号化またはコーディングされ、ビットストリーム31を形成するために合意された(または、言い換えれば、指定された)フォーマットに従って配置され得る。ビットストリーム31を形成するために直接的に圧縮されるにせよ、ビットストリーム31を形成するためにレンダリングされ、次いで圧縮されるにせよ、コンテンツ作成者22は、ビットストリーム31をコンテンツ消費者24に送信することができる。
[0049]図3ではコンテンツ消費者24に直接的に送信されているが示されているが、コンテンツ作成者22は、コンテンツ作成者22とコンテンツ消費者24の間に位置決めされた中間デバイスにビットストリーム31を出力することができる。この中間デバイスは、ビットストリーム31を要求することがあるコンテンツ消費者24に後で配信するために、このビットストリームを記憶することができる。中間デバイスは、ファイルサーバ、ウェブサーバ、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、モバイルフォン、スマートフォン、または後でのオーディオデコーダによる取出しのためにビットストリーム31を記憶することが可能な任意の他のデバイスを備えることができる。この中間デバイスは、ビットストリーム31を要求するコンテンツ消費者24などの加入者にビットストリーム31を(おそらくは対応するビデオデータストリームを送信するとともに)ストリーミングすることが可能なコンテンツ配信ネットワークに存在してもよい。
[0050]代替的に、コンテンツ作成者22は、コンパクトディスク、デジタルビデオディスク、高精細度ビデオディスク、または他の記憶媒体などの記憶媒体にビットストリーム31を格納することができ、記憶媒体の大部分はコンピュータによって読み取り可能であり、したがって、コンピュータ可読記憶媒体または非一時的コンピュータ可読記憶媒体と呼ばれることがある。この文脈において、送信チャンネルは、これらの媒体に格納されたコンテンツが送信されるチャンネルを指すことがある(および、小売店と他の店舗ベースの配信機構とを含み得る)。したがって、いずれにしても、本開示の技法は、この点に関して図3の例に限定されるべきではない。
[0051]図3の例にさらに示されるように、コンテンツ消費者24は、オーディオ再生システム32を含む。オーディオ再生システム32は、マルチチャンネルオーディオデータを再生することが可能な任意のオーディオ再生システムを表すことができる。オーディオ再生システム32は、いくつかの異なるレンダラ34を含むことができる。レンダラ34は各々、異なる形態のレンダリングを提供することができ、異なる形態のレンダリングは、vector−base amplitude panning(VBAP)を実行する様々な方法のうち1つもしくは複数および/または音場合成を実行する様々な方法のうち1つもしくは複数を含むことができる。
[0052]オーディオ再生システム32は、抽出デバイス38をさらに含むことができる。抽出デバイス38は、一般にビットストリーム生成デバイス36のプロセスに相反し得るプロセスによって球面調和係数27’(球面調和係数27の修正された形態または複製物を表すことができる「SHC27’」)を抽出することが可能な任意のデバイスを表すことができる。いずれにしても、オーディオ再生システム32は、球面調和係数27’を受け取ることができ、レンダラ34のうち1つを選択することができる。次いで、レンダラ34のうち選択された1つは、いくつかのスピーカーフィード35(説明を簡単にするために図3の例には示されていない、オーディオ再生システム32に電気的にまたはおそらくワイヤレスで結合されたラウドスピーカーの数に対応する)を生成するために球面調和係数27’をレンダリングすることができる。
[0053]一般に、ビットストリーム生成デバイス36がSHC27を直接的に符号化するとき、ビットストリーム生成デバイス36は、SHC27のすべてを符号化する。音場の各表現のために送られるSHC27の数は、次数に依存し、(1+n)2/サンプルと数学的に表され得、ここで、nはこの場合も次数を示す。音場の第4次表現を達成するために、一例として、25のSHCが導出され得る。一般に、SHCの各々は、32ビット符号付き浮動小数点数として表される。したがって、音場の第4次表現を表すために、この例では、合計25×32すなわち800ビット/サンプルが必要とされる。48kHzのサンプリングレートが使用されるとき、これは、800×48,000すなわち38,400,000ビット/秒を表す。いくつかの例では、SHC27のうち1つまたは複数が、目立つ(salient)情報(コンテンツ消費者24で再現されるとき音場について説明する際に可聴または重要であるオーディオ情報を含む情報を指すことがある)を指定しないことがある。SHC27のうちこれらの非目立つSHCを符号化することによって、送信チャンネル(コンテンツ配信ネットワークタイプの送信機構を仮定する)による帯域幅の非効率的な使用が生じることがある。これらの係数の格納を含む適用例では、上記は、記憶空間の非効率的な使用を表すことができる。
[0054]いくつかの例では、ビットストリーム31に含まれるSHC27のサブセットを識別するとき、ビットストリーム生成デバイス36は、複数のビットを有するビットストリーム31内のフィールドを識別することがあり、この複数のビットのうち異なるビットは、SHC27の対応するビットがビットストリーム31に含まれるかどうか識別する。いくつかの例では、ビットストリーム31に含まれるSHC27のサブセットを識別するとき、ビットストリーム生成デバイス36は、(n+1)2ビットに等しい複数のビットを有するフィールドを指定することがあり、ここで、nは音場について説明する要素の階層的なセットの順序を示し、複数のビットの各々は、SHC27の対応するビットがビットストリーム31に含まれるかどうか識別する。
[0055]いくつかの例では、ビットストリーム生成デバイス36は、ビットストリーム31に含まれるSHC27のサブセットを識別するとき、複数のビットを有するビットストリーム31内のフィールドを識別することがあり、この複数のビットのうち異なるビットは、SHC27の対応するビットがビットストリーム31に含まれるかどうか識別する。SHC27の識別されたサブセットを指定するとき、ビットストリーム生成デバイス36は、ビットストリーム31において、複数のビットを有するフィールドのすぐ後のSHC27の識別されたサブセットを指定することがある。
[0056]いくつかの例では、ビットストリーム生成デバイス36は、さらに、SHC27のうち1つまたは複数が音場について説明するのに関連する情報を有すると決定することがある。ビットストリーム31に含まれるSHC27のサブセットを識別するとき、ビットストリーム生成デバイス36は、音場について説明するのに関連する情報を有するSHC27の決定された1つまたは複数がビットストリーム31に含まれると識別することがある。
[0057]いくつかの例では、ビットストリーム生成デバイス36は、さらに、SHC27のうち1つまたは複数が音場について説明するのに関連する情報を有すると決定することがある。ビットストリーム31に含まれるSHC27のサブセットを識別するとき、ビットストリーム生成デバイス36は、ビットストリーム31において、音場について説明するのに関連する情報を有するSHC27の決定された1つまたは複数がビットストリーム31に含まれることを識別し、ビットストリーム31において、音場について説明するのに関連しない情報を有するSHC27の残りのビットがビットストリーム31に含まれないと識別することがある。
[0058]いくつかの例では、ビットストリーム生成デバイス36は、SHC27値のうち1つまたは複数が閾値を下回ると決定することがある。ビットストリーム31に含まれるSHC27のサブセットを識別するとき、ビットストリーム生成デバイス36は、ビットストリーム31において、この閾値を上回るSHC27のうち決定された1つまたは複数がビットストリーム31内で指定されると決定することがある。閾値は、多くの場合、ゼロの値であってよいが、実際的な実装形態に関して、閾値は、ノイズフロア(すなわち周囲エネルギー)を表す値に設定されてもよいし、現在の信号エネルギー(閾値を信号に依存するようにし得る)に比例する何らかの値に設定されてもよい。
[0059]いくつかの例では、ビットストリーム生成デバイス36は、音場について説明するのに関連する情報を提供するいくつかのSHC27を減少させるために音場を調整または変換することがある。「調整」という用語は、線形可逆変換を表す任意の1つまたは複数の行列の適用を指すことができる。これらの例では、ビットストリーム生成デバイス36は、音場がどのように調整されたか、すなわち言い換えれば、どのように変換されたかについて説明する、ビットストリーム31内の調整情報(「変換情報」と呼ばれることもある)を指定することがある。その後でビットストリーム内で指定されるSHC27のサブセットを識別する情報に加えて、この情報を指定すると説明されているが、技法のこの態様は、ビットストリームに含まれるSHC27のサブセットを識別する情報を指定することの代替として説明され得る。したがって、本技法はこの点において限定されるべきではない。
[0060]いくつかの例では、ビットストリーム生成デバイス36は、音場について説明するのに関連する情報を提供するいくつかのSHC27を減少させるために音場を回転させることがある。これらの例では、ビットストリーム生成デバイス36は、音場がどのように回転されたかについて説明する、ビットストリーム31内の回転情報を指定することがある。回転情報は、方位角値(360度を知らせることが可能である)と、仰角値(180度を知らせることが可能である)とを備えることができる。いくつかの例では、方位角値は、1つまたは複数のビットを備え、一般に10ビットを含む。いくつかの例では、仰角値は、1つまたは複数のビットを備え、一般に少なくとも9ビットを含む。ビットのこの選定によって、最も単純な実施形態では、180/512度の分解能(仰角と方位角の両方において)が可能になる。いくつかの例では、変換は回転を備えることがあり、上記で説明された変換情報は回転情報を含む。いくつかの例では、ビットストリーム生成デバイス36は、音場について説明するのに関連する情報を提供するいくつかのSHC27を減少させるために音場を変換することがある。これらの例では、ビットストリーム生成デバイス36は、音場がどのように変換されたかについて説明する、ビットストリーム31内の変換情報を指定することがある。いくつかの例では、調整は変換を備えることがあり、上記で説明された調整情報は変換情報を含む。
[0061]いくつかの例では、ビットストリーム生成デバイス36は、閾値を上回る非ゼロ値を有するいくつかのSHC27を減少させるように音場を調整し、音場がどのように調整されたかについて説明する、ビットストリーム31内の調整情報を指定することがある。いくつかの例では、ビットストリーム生成デバイス36は、閾値を上回る非ゼロ値を有するいくつかのSHC27を減少させるように音場を回転させ、音場がどのように回転されたかについて説明する、ビットストリーム31内の回転情報を指定することがある。いくつかの例では、ビットストリーム生成デバイス36は、閾値を上回る非ゼロ値を有するいくつかのSHC27を減少させるように音場を変換させ、音場がどのように変換されたかについて説明する、ビットストリーム31内の変換情報を指定することがある。
[0062]音場の説明に関連する情報を含まないSHC27のサブセット(SCH27のゼロ値と評価されたサブセットなどの)はビットストリームにおいて指定されない、すなわち、ビットストリームに含まれないので、ビットストリーム31に含まれるSHC27のサブセットをビットストリーム31において識別することによって、ビットストリーム生成デバイス36は、帯域幅のより効率的な使用を促進することができる。その上、追加または代替として、音場の説明に関連する情報を指定するSHC27の数を減少させるためにSHC27を生成するとき、音場を調整することによって、ビットストリーム生成デバイス36は、再度またはさらに、潜在的により効率的な帯域幅の使用を提供することができる。このようにして、ビットストリーム生成デバイス31は、ビットストリーム31内で指定されるために必要とされるSHC27の数を減少させ、それによって、非固定レートシステム(数例を提供するための目標ビットレートを持たないまたはフレームまたはサンプルあたりビット配分を提供しないオーディオコーディング技法を指すことがある)における帯域幅の利用を潜在的に改善する、または、固定レートシステムでは、音場について説明するのにより関連する情報へのビットの割振りを潜在的にもたらすことができる。
[0063]追加または代替として、ビットストリーム生成デバイス36は、変換された球面調和係数の異なるサブセットに異なるビットレートを割り当てるために、本開示において説明された技法に従って動作することがある。音場を変換する、たとえば回転させることによって、ビットストリーム生成デバイス36は、最も目立つ部分(多くの場合、音場の様々な空間的ロケーションにおけるエネルギーの分析によって識別される)をZ軸などの軸と位置合わせし、最も高いエネルギー部分を音場内の聴取者よりも上に効率的に設定することができる。言い換えれば、ビットストリーム生成デバイス36は、最高エネルギーを有する音場の部分を識別するために音場のエネルギーを分析することができる。音場の2つ以上の部分が高いエネルギーを有する場合、ビットストリーム生成デバイス36は、最高エネルギーを有する部分を識別するために、これらのエネルギーを比較することができる。次いで、ビットストリーム生成デバイス36は、音場の最高エネルギー部分をZ軸と位置合わせするように音場を回転させるための1つまたは複数の角度を識別することができる。
[0064]この回転または他の変換は、球面基底関数が設定される基準フレームの変換と見なされてよい。図2の例に示されるZ軸などのZ軸を垂直方向に真っすぐであるように維持するのではなく、このZ軸は、音場の最高エネルギー部分の方向を指し示すように、1つまたは複数の角度によって変換され得る。次いで、Z軸と位置合わせされた次数1および副次数ゼロの球面基底関数などの、何らかの方向性成分を有するそれらの基底関数が回転され得る。次いで、音場は、これらの変換された、たとえば回転された、球面基底関数を使用して表され得る。ビットストリーム生成デバイス36は、Z軸が音場の最高エネルギー部分と位置合わせするように、この基準フレームを回転させることができる。この回転は、音場の最高エネルギーが主にそれらのゼロ副次数基底関数によって表されるという結果になることがあるが、非ゼロ副次数基底関数は、同程度の目立つ情報を含まないことがある。
[0065]ひとたびこのようにして回転されると、ビットストリーム生成デバイス36は、変換された球面調和係数を決定することができ、変換された球面調和係数とは、変換された球面基底関数に関連付けられた球面調和係数を指す。ゼロ副次数球面基底関数は主に音場を表すことができることを考えると、ビットストリーム生成デバイス36は、ビットストリーム31内のこれらのゼロ副次数の変換された球面調和係数(ゼロ副次数基底関数に対応するそれらの変換された球面調和係数を指すことがある)を表すための第1のビットレートを割り当て、ビットストリーム31内の非ゼロ副次数の変換された球面調和係数(非ゼロ副次数基底関数に対応するそれらの変換された球面調和係数を指すことがある)を表すための第2のビットレートを割り当てることができ、ここで、この第1のビットレートは第2のビットレートよりも大きい。言い換えれば、ゼロ副次数の変換された球面調和係数は音場の最も目立つ部分について説明するので、ビットストリーム生成デバイス36は、ビットストリーム内のこれらの変換された係数を表すためのより高いビットレートを割り当て、ビットストリーム内のこれらの係数を表すためのより低いビットレート(より高いビットレートに対して)を割り当てることができる。
[0066]これらのビットレートを、変換された球面調和係数の第1のサブセット(たとえば、ゼロ副次数変換された球面調和係数)および変換された球面調和係数の第2のサブセット(たとえば、非ゼロ副次数変換された球面調和係数)と呼ばれ得るものに割り当てるとき、ビットストリーム生成デバイス36は、ハニング窓関数、ハミング窓関数、矩形窓関数、または三角形窓関数などの窓関数を利用することができる。変換された球面調和係数の第1のサブセットおよび第2のサブセットに関して説明するが、ビットストリーム生成デバイス36は、球面調和係数の2つ、3つ、4つ、および多くの場合は最大2*n+1(ここで、nは次数を指す)のサブセットを識別することができる。一般に、次数に対する各副次数は、ビットストリーム生成デバイス36が異なるビットレートを割り当てる、変換された球面調和係数の別のサブセットを表すことができる。
[0067]この意味で、ビットストリーム生成デバイス36は、次数および/または副次数ごとにSHC27の異なるビットに異なるビットレートを動的に割り当てることができる。ビットレートのこの動的割振りは、全体的な目標ビットレートのより優れた使用を容易にし、音場のより目立つ部分について説明する変換されたSHC27のビットにより高いビットレートを割り当て、音場の比較的目立つでない部分(または、言い換えれば、周囲部分または背景部分)について説明する変換されたSHC27のビットにより低いビットレート(より高いビットレートと比較して)を割り当てることができる。
[0068]例示するために、図2の例についてもう一度考える。ビットストリーム生成デバイス36は、窓関数に基づいて、変換された球面調和係数の各副次数にビットレートを割り当てることができ、第4次の場合、ビットストリーム生成デバイス36は、変換された球面調和係数の9つの(マイナス4からプラス4まで)異なるサブセットを識別する。たとえば、ビットストリーム生成デバイス36は、窓関数に基づいて、0副次数の変換された球面調和係数を表すための第1のビットレートと、−1/+1副次数の変換された球面調和係数を表すための第2のビットレートと、−2/+2副次数の変換された球面調和係数を表すための第3のビットレートと、−3/+3副次数の変換された球面調和係数とを表すための第4のビットレート、−4/+4副次数の変換された球面調和係数を表すための第5のビットレートとを割り当てることができる。
[0069]いくつかの例では、ビットストリーム生成デバイス36は、なお一層粒度の細かい様式でビットレートを割り当てることができ、ビットレートは、副次数単位だけではなく次数単位でも変化する。高次球面基底関数が小さいローブを有することを考えると、これらの高次球面基底関数は、音場の高エネルギー部分を表すうえで、それほど重要ではない。その結果、ビットストリーム生成デバイス36は、低次の変換された球面調和係数に割り当てられるこのビットレートに対して、高次の変換された球面調和係数に低いビットレートを割り当てることができる。この場合も、ビットストリーム生成デバイス36は、この次数固有ビットレートを、副次数固有ビットレートの割当てに関して上記で説明した様式に類似した様式で、窓関数に基づいて割り当てることができる。
[0070]この点に関して、ビットストリーム生成デバイス36は、変換された球面調和係数のサブセットが対応する球面基底関数の次数および副次数のうち1つまたは複数に基づいて、変換された球面調和係数の少なくとも1つのサブセットにビットレートを割り当てることができ、変換された球面調和係数は、音場を変換する変換演算に従って変換された。
[0071]いくつかの例では、変換演算は、ファイルされた音を回転させる回転演算を備える。
[0072]いくつかの例では、ビットストリーム生成デバイス36は、最高エネルギーを有する音場の一部分が軸と位置合わせされるように音場を回転させるための1つまたは複数の角度を識別することがあり、変換演算は、変換された球面調和係数を生成するように識別された1つまたは複数の角度だけ音場を回転させる回転演算を備えることがある。
[0073]いくつかの例では、ビットストリーム生成デバイス36は、最高エネルギーを有する音場の一部分がZ軸と位置合わせされるように音場を回転させるための1つまたは複数の角度を識別することができ、変換演算は、変換された球面調和係数を生成するように識別された1つまたは複数の角度だけ音場を回転させる回転演算を備えることがある。
[0074]いくつかの例では、ビットストリーム生成デバイス36は、音場を回転させるための1つまたは複数の角度を識別するために音場に関する空間分析を実行することがあり、変換演算は、変換された球面調和係数を生成するように識別された1つまたは複数の角度だけ音場を回転させる回転演算を備えることがある。
[0075]いくつかの例では、ビットストリーム生成デバイス36は、ビットレートを割り当てるとき、変換された球面調和係数の各々が対応する球面基底関数の次数および副次数のうち1つまたは複数に基づいて変換された球面調和係数の異なるサブセットに異なるビットレートを、窓関数に従って、動的に割り当てることがある。窓関数は、ハニング窓関数、ハミング窓関数、矩形窓関数、および三角形窓関数のうち1つまたは複数を備えることができる。
[0076]いくつかの例では、ビットストリーム生成デバイス36は、ビットレートを割り当てるとき、ゼロの副次数を有する球面基底関数のサブセットに対応する変換された球面調和係数の第1のサブセットに第1のビットレートを割り当て、プラス1またはマイナス1のいずれかの副次数を有する球面基底関数のサブセットに対応する変換された球面調和係数の第2のサブセットに第2のビットレートを割り当てることがあり、第1のビットレートは第2のビットレートよりも大きい。この意味では、技法は、SHC27が対応する球面基底関数の副次数に基づくビットレートの動的割当てを提供することができる。
[0077]いくつかの例では、ビットストリーム生成デバイス36は、ビットレートを割り当てるとき、1の次数を有する球面基底関数のサブセットに対応する変換された球面調和係数の第1のサブセットに第1のビットレートを割り当て、2の次数を有する球面基底関数のサブセットに対応する変換された球面調和係数の第2のサブセットに第2のビットレートを割り当てることがあり、第1のビットレートは第2のビットレートよりも大きい。このようにして、技法は、SHC27が対応する球面基底関数の次数に基づくビットレートの動的割当てを提供することができる。
[0078]いくつかの例では、ビットストリーム生成デバイス36は、第1のビットレートを使用する変換された球面調和係数の第1のサブセットと第2のビットレートを使用する変換された球面調和係数の第2のサブセットとを指定するビット
[0079]いくつかの例では、ビットストリーム生成デバイス36は、ビットレートを割り当てるとき、変換された球面調和係数が対応する球面基底関数の副次数がゼロから遠ざかるにつれて徐々に減少するビットレートを動的に割り当てることがある。
[0080]いくつかの例では、ビットストリーム生成デバイス36は、ビットレートを割り当てるとき、変換された球面調和係数が対応する球面基底関数の次数が増加するにつれて徐々に減少するビットレートを動的に割り当てることがある。
[0081]いくつかの例では、ビットストリーム生成デバイス36は、ビットレートを割り当てるとき、変換された球面調和係数のサブセットが対応する球面基底関数の次数および副次数のうち1つまたは複数に基づいて変換された球面調和係数の異なるサブセットに異なるビットレートを動的に割り当てることがある。
[0082]次いで、コンテンツ消費者24内で、抽出デバイス38は、ビットストリーム生成デバイス36に関して上記で説明された態様に相反する技法の態様により、オーディオコンテンツを表すビットストリーム31を処理する方法を実行することができる。抽出デバイス38は、ビットストリーム31に含まれる音場について説明するSHC27’のサブセットをビットストリーム31から決定し、SHC27’の識別されたサブセットを決定するためにビットストリーム31を解析することができる。
[0083]いくつかの例では、抽出デバイス38は、ビットストリーム31に含まれるSHC27’のサブセットを決定するとき、抽出デバイス38は、複数のビットを有するフィールドを決定するためにビットストリーム31を解析することができ、複数のビットのうちの各ビットは、SHC27’の対応するビットがビットストリーム31に含まれるかどうか識別する。
[0084]いくつかの例では、抽出デバイス38は、ビットストリーム31に含まれるSHC27’のサブセットを決定するとき、(n+1)2ビットに等しい複数のビットを有するフィールドを指定することがあり、ここでこの場合も、nは、音場について説明する要素の階層的なセットの次数を示す。この場合も、複数のビットの各々は、SHC27’の対応するビットがビットストリーム31に含まれるかどうか識別する。
[0085]いくつかの例では、抽出デバイス38は、ビットストリーム31に含まれるSHC27’のサブセットを決定するとき、複数のビットを有するビットストリーム31内のフィールドを識別するためにビットストリーム31を解析することがあり、複数のビットのうち異なるビットは、SHC27’の対応するビットがビットストリーム31に含まれるかどうか識別する。抽出デバイス38は、SHC27’の識別されたサブセットを決定するためにビットストリーム31を解析するとき、複数のビットを有するフィールドの後のビットストリーム31からSHC27’の識別されたサブセットを直接的に決定するためにビットストリーム31を解析することがある。
[0086]いくつかの例では、抽出デバイス38は、音場について説明するのに関連する情報を提供するいくつかのSHC27’を減少させるように音場がどのように調整されたかについて説明する情報調整を決定するためにビットストリーム31を解析することがある。抽出デバイス38は、この情報をオーディオ再生システム32に提供することができ、オーディオ再生システム32は、音場について説明するのに関連する情報を提供するSHC27’のサブセットに基づいて音場を再現するとき、複数の階層的な要素の数を減少させるために実行される調整を逆にするように調整情報に基づいて音場を調整する。
[0087]いくつかの例では、抽出デバイス38は、技法の上記で説明された態様の代替としてまたはこれとともに、音場について説明するのに関連する情報を提供するSHC27’の数を減少させるために音場がどのように回転されたかについて説明する回転情報を決定するためにビットストリーム31を解析することがある。抽出デバイス38は、この情報をオーディオ再生システム32に提供することができ、オーディオ再生システム32は、音場について説明するのに関連する情報を提供するSHC27’のサブセットに基づいて音場を再現するとき、複数の階層的な要素の数を減少させるために実行される回転を逆にするように回転情報に基づいて音場を回転する。
[0088]いくつかの例では、抽出デバイス38は、技法の上記で説明された態様の代替としてまたはこれとともに、音場について説明するのに関連する情報を提供するSHC27’の数を減少させるために音場がどのように変換されたかについて説明する変換情報を決定するためにビットストリーム31を解析することがある。抽出デバイス38は、この情報をオーディオ再生システム32に提供することができ、オーディオ再生システム32は、音場について説明するのに関連する情報を提供するSHC27’のサブセットに基づいて音場を再現するとき、複数の階層的な要素の数を減少させるために実行される変換を逆にするように調整情報に基づいて音場を変換する。
[0089]いくつかの例では、抽出デバイス38は、技法の上記で説明された態様の代替としてまたはこれとともに、非ゼロ値を有するいくつかのSHC27’を減少させるように音場がどのように調整されたかについて説明する調整情報を決定するためにビットストリーム31を解析することがある。抽出デバイス38は、この情報をオーディオ再生システム32に提供することができ、オーディオ再生システム32は、非ゼロ値を有するSHC27’のサブセットに基づいて音場を再現するとき、複数の階層的な要素の数を減少させるために実行される調整を逆にするように調整情報に基づいて音場を調整する。
[0090]いくつかの例では、抽出デバイス38は、技法の上記で説明された態様の代替としてまたはこれとともに、非ゼロ値を有するいくつかのSHC27’を減少させるように音場がどのように回転されたかについて説明する回転情報を決定するためにビットストリーム31を解析することがある。抽出デバイス38は、この情報をオーディオ再生システム32に提供することができ、オーディオ再生システム32は、非ゼロ値を有するSHC27’のサブセットに基づいて音場を再現するとき、複数の階層的な要素の数を減少させるために実行される回転を逆にするように回転情報に基づいて音場を回転する。
[0091]いくつかの例では、抽出デバイス38は、技法の上記で説明された態様の代替としてまたはこれとともに、非ゼロ値を有するいくつかのSHC27’を減少させるように音場がどのように変換されたかについて説明する変換情報を決定するためにビットストリーム31を解析することがある。抽出デバイス38は、この情報をオーディオ再生システム32に提供することができ、オーディオ再生システム32は、非ゼロ値を有するSHC27’のサブセットに基づいて音場を再現するとき、複数の階層的な要素の数を減少させるために実行される変換を逆にするように変換情報に基づいて音場を変換する。
[0092]この点に関して、技法の様々な態様は、ビットストリームにおいて、ビットストリームに含まれる、高次アンビソニックス(HOA)係数(球面調和係数とも呼ばれることがある)などの複数の階層的な要素のうち要素の信号伝達を可能にすることができる(ビットストリームに含まれ得る要素は「複数のSHCのサブセット」と呼ばれることがある)。HOA係数のうちいくつかが、音場について説明するのに関連する情報を提供しないことがあることを考えると、オーディオエンコーダは、複数のHOA係数を、音場について説明するのに関連する情報を提供するHOA係数のサブセットに減少させ、それによって、コード化効率を増加させることがある。その結果、技法の様々な態様は、HOA係数および/またはその符号化されたバージョン、ビットストリームに実際に含まれるHOA係数のうちHOA(たとえば、HOA係数のうち少なくとも1つを含むが係数のすべてを含むとは限らないHOA係数の非ゼロサブセット)を含むビットストリーム内で指定することを可能にすることができる。HOA係数のサブセットを識別する情報は、前述のようにビットストリーム内で指定されてもよいし、いくつかの例では、サイドチャンネル情報内で指定されてもよい。
[0093]図4Aおよび図4Bは、ビットストリーム生成デバイス36の例示的な実装形態を示すブロック図である。図4Aの例に示されるように、ビットストリーム生成デバイス36Aと示されるビットストリーム生成デバイス36の第1の実装形態は、空間分析ユニット150と、回転ユニット154と、コーディングエンジン160と、マルチプレクサ(MUX)164とを含む。
[0094]SHCの形態の3Dオーディオデータを表すために必要とされる帯域幅−ビット/秒に関して−は、消費者の使用に関して禁止とすることがある。たとえば、48kHzのサンプリングレートを使用するとき、および32ビット/同じ分解能を用いて−4次SHC表現は、36Mbits/秒(25×48000×32bps)の帯域幅を表す。一般に約100kbits/秒である、ステレオ信号のための最先端のオーディオコーディングと比較すると、これは大きい数字である。図5の例において実施される技法は、3Dオーディオ表現の帯域幅を減少させることができる。
[0095]空間分析ユニット150および回転ユニット154は、SHC27を受け取ることができる。本開示の他の場所で説明されるように、SHC27は音場を表すことができる。図4Aの例では、空間分析ユニット150および回転ユニット154は、音場の第4次(N=4)表現に対して25のSHCのサンプルを受け取ることができる。一般に、オーディオデータのフレームは1028のサンプルを含むが、技法は、任意の数のサンプルを有するフレームに対して実行され得る。空間分析ユニット150および回転ユニット154は、オーディオデータのフレームに対して以下で説明される様式で動作することができる。オーディオデータのフレームに対して動作すると説明されているが、技法は、単一サンプルとオーディオデータの全体までとを含む、任意の量のオーディオデータに対して動作され得る。
[0096]空間分析ユニット150は、音場の別個の成分と音場の拡散成分とを識別するためにSHC27によって表される音場を分析することができる。音場の別個の成分とは、識別可能な方向から来ると知覚されるまたは音場の背景成分すなわち拡散成分とは別個の音である。たとえば、個々の楽器によって生成される音は、識別可能な方向から来ると知覚され得る。対照的に、音場の背景成分すなわち拡散成分は、識別可能な方向から来ると知覚されない。たとえば、森を通る風の音は、音場の拡散成分であり得る。いくつかの例では、別個の成分は、「目立つ成分」または「前景成分」とも呼ばれることがあり、拡散成分は、「周囲成分」または「背景成分」とも呼ばれることがある。
[0097]一般に、これらの別個の成分は、音場の識別可能なロケーションにおいて高いエネルギーを有する。空間分析ユニット150は、音場のこれらの「高エネルギー」ロケーションを識別し、最高エネルギーを有する音場内ロケーションを決定するために各高エネルギーロケーションを分析することができる。次いで、空間分析ユニット150は、最も多いエネルギーを有する別個の成分のうち成分をZ軸などの軸(この音場を記録した推定されたマイクロフォンに対する)と位置合わせするために音場を回転させるための最適な角度を決定することができる。空間分析ユニット150は、これらの別個の成分が図1および図2の例に示される基礎をなす球面基底関数とより良く位置合わせするように音場が回転され得るように、この最適な角度を識別することができる。
[0098]いくつかの例では、空間分析ユニット150は、拡散音(低レベルの方向または低次SHCを有する音を指すことがあり、SHC27のビットが1以下の次数を有することを意味する)を含むSHC27によって表される音場のパーセンテージを識別するために一種の拡散分析を実行するように構成されたユニットを表すことができる。一例として、空間分析ユニット150は、2007年6月付けのJ.AudioEng.Soc.第55巻第6号で公開された「Spatial Sound Reproduction with Directional Audio Coding」という名称の、Ville Pulkkiによる論文で説明される様式に類似した様式で拡散分析を実行することができる。いくつかの例では、空間分析ユニット150は、拡散パーセンテージを決定するために拡散分析を実行するとき、SHC27のゼロ次サブセットおよび第1次サブセットなどのSHC27係数の非ゼロサブセットのみを分析することがある。
[0099]回転ユニット154は、識別された最適な角度(または、場合によっては複数の角度)に基づいてSHC27の回転演算を実行することができる。本開示の他の場所で(たとえば、図5Aおよび図5Bに関して)説明されるように、回転演算を実行することによって、SHC27を表すために必要とされるビットの数が減少することができる。回転ユニット154は、変換された球面調和係数155(「変換されたSHC155」)をコーディングエンジン160に出力することができる。
[0100]コーディングエンジン160は、変換されたSHC155を帯域幅圧縮するように構成されたユニットを表すことができる。コーディングエンジン160は、本開示で説明される技法により、変換されたSHC155の異なるサブセットに異なるビットレートを割り当てることができる。図4Aの例に示されるように、コーディングエンジン160は、窓関数161と、AACコーディングユニット163とを含む。コーディングエンジン160は、AACコーディングユニット163のうち1つまたは複数にビットレートを割り当てるために、窓関数161を目標ビットレートに適用することができる。窓関数161は、変換されたSHC155が対応する球面基底関数の各次数および/または副次数のための異なるビットレートを識別することができる。次いで、コーディングエンジン160は、識別されたビットレートを用いてAACコーディングユニット163を構成することができ、その後、コーディングエンジン160は、変換されたSHC155を異なるサブセットに分割し、これらの異なるサブセットをAACコーディングユニット163の対応するユニットに渡すことができる。すなわち、ビットレートは、AACコーディングユニット163のうち1つにおいて、ゼロ副次数球面基底関数に対応する変換されたSHC155のビットのために構成されてよく、コーディングエンジン160は、ゼロ副次数球面基底関数に対応する変換されたSHC127のビットをAACコーディングユニット163のうち1つに渡す。次いで、AACコーディングユニット163は、変換されたSHC155のサブセットに対してAACを実行し、変換されたSHC155の異なるサブセットの圧縮されたバージョンをマルチプレクサ164に出力することができる。次いで、マルチプレクサ164は、ビットストリーム31を生成するために、これらのサブセットを最適な角度とともに多重化することができる。
[0101]図4Bの例に示されるように、ビットストリーム生成デバイス36Bは、空間分析ユニット150と、コンテンツ特性分析ユニット152と、回転ユニット154と、コヒーレント成分抽出ユニット156と、拡散成分抽出ユニット158と、コーディングエンジン160と、マルチプレクサ(MUX)164とを含む。ビットストリーム生成デバイス36Aに類似しているが、ビットストリーム生成デバイス36Bは、追加ユニット152と、156と、158とを含む。
[0102]コンテンツ特性分析ユニット152は、SHC27に少なくとも部分的に基づいて、SHC27が音場の自然な記録を介して生成されたのかまたは一例としてPCMオブジェクトなどのオーディオオブジェクトから人工的に(すなわち、合成して)生成されたのか決定することができる。その上、コンテンツ特性分析ユニット152は、次いで、SHC27が音場の自然な記録を介して生成されたのかまたは人工的なオーディオオブジェクトから生成されたのかに少なくとも部分的に基づいて、ビットストリーム31に含むべきチャンネルの総数を決定することができる。たとえば、コンテンツ特性分析ユニット152は、SHC27が音場の自然な記録を介して生成されたのかまたは人工的なオーディオオブジェクトから生成されたのかに少なくとも部分的に基づいて、ビットストリーム31が16のチャンネルを含むべきであると決定することができる。チャンネルの各々はモノラルチャンネルであってよい。コンテンツ特性分析ユニット152は、さらに、ビットストリーム31の出力ビットレート、たとえば1.2Mbpsに基づいて、ビットストリーム31に含まれるべきチャンネルの総数の決定を実行することができる。
[0103]さらに、コンテンツ特性分析ユニット152は、SHC27が実際の音場の記録から生成されたのかまたは人工的なオーディオオブジェクトから生成されたのかに少なくとも部分的に基づいて、チャンネルのうちいくつが音場のコヒーレント成分または言い換えれば別個の成分に割り振るべきか、およびチャンネルのうちいくつが音場の拡散成分または言い換えれば背景成分に割り振るべきか、決定することができる。たとえば、SHC27が一例としてEigenmicを使用して実際の音場の記録から生成されたとき、コンテンツ特性分析ユニット152は、チャンネルのうち3つを音場のコヒーレント成分に割り振ることがあり、残りのチャンネルを音場の拡散成分に割り振ることがある。この例では、SHC27が人工的なオーディオオブジェクトから生成されたとき、コンテンツ特性分析ユニット152は、チャンネルのうち5つを音場のコヒーレント成分に割り振ることがあり、残りのチャンネルを音場の拡散成分に割り振ることがある。このようにして、コンテンツ分析ブロック(すなわち、コンテンツ特性分析ユニット152)は、音場のタイプ(たとえば、拡散/方向性など)を決定し、次に抽出するべきコヒーレント/拡散成分の数を決定することができる。
[0104]目標ビットレートは、成分の数と、個々のAACコーディングエンジン(たとえば、コーディングエンジン160)のビットレートとに影響を及ぼすことができる。言い換えれば、コンテンツ特性分析ユニット152は、さらに、ビットストリーム31の出力ビットレート、たとえば1.2Mbpsに基づいて、いくつのチャンネルがコヒーレント成分に割り振るべきかおよびいくつのチャンネルが拡散成分に割り振るべきかという決定を実行することができる。
[0105]いくつかの例では、音場のコヒーレント成分に割り振られるチャンネルは、音場の拡散成分に割り振られるチャンネルよりも大きいビットレートを有することがある。たとえば、ビットストリーム31の最大ビットレートが1.2Mb/secであることがある。この例では、コヒーレント成分に割り振られる4つのチャンネルおよび拡散成分に割り振られる16のチャンネルが存在することがある。その上、この例では、コヒーレント成分に割り振られるチャンネルの各々は、64kb/secの最大ビットレートを有することがある。この例では、拡散成分に割り振られるチャンネルの各々は、48kb/secの最大ビットレートを有することがある。
[0106]上述のように、コンテンツ特性分析ユニット152は、SHC27が実際の音場の記録から生成されたのかまたは人工的なオーディオオブジェクトから生成されたのか決定することができる。コンテンツ特性分析ユニット152は、この決定を様々な方法で行うことができる。たとえば、ビットストリーム生成デバイス36は、第4次SHCを使用することがある。この例では、コンテンツ特性分析ユニット152は、24のチャンネルをコーディングし、25番目のチャンネル(ベクトルとして表され得る)を予測することができる。コンテンツ特性分析ユニット152は、25番目のベクトルを決定するために、24のチャンネルのうち少なくともいくつかにスカラーを適用し、結果として得られる値を追加することができる。その上、この例では、コンテンツ特性分析ユニット152は、予測された25番目のチャンネルの精度を決定することがある。この例では、予測された25番目のチャンネルの精度が比較的高い(たとえば、精度が特定の閾値を超える)場合、SHC27は、合成オーディオオブジェクトから生成された可能性がある。対照的に、予測された25番目のチャンネルの精度が比較的低い(たとえば、精度が特定の閾値を下回る)場合、SHC27は、記録された音場を表す可能性が高い。たとえば、この例では、25番目のチャンネルの信号対雑音比(SNR)が100デシベル(db)を超える場合、SHC27は、合成オーディオオブジェクトから生成された音場を表す可能性が高い。対照的に、Eigenmikeを使用して記録された音場のSNRは5〜20dbであることがある。したがって、実際の直接的な記録から生成されたSHC27によって表される音場と合成オーディオオブジェクトから生成されたSHC27によって表される音場の間に、SNR比における明らかな境界が存在することがある。
[0107]その上、コンテンツ特性分析ユニット152は、SHC27が音場の自然な記録を介して生成されたのかまたは人工的なオーディオオブジェクトから生成されたのかに少なくとも部分的に基づいて、Vベクトルを量子化するためのコードブックを選択することができる。言い換えれば、コンテンツ特性分析ユニット152は、HOA係数によって表される音場が記録されたのかまたは合成であるのかに応じて、Vベクトルを量子化するのに使用するための異なるコードブックを選択することができる。
[0108]いくつかの例では、コンテンツ特性分析ユニット152は、SHC27が実際の音場の記録から生成されたのかまたは人工的なオーディオオブジェクトから生成されたのか繰り返し決定することができる。いくつかのそのような例では、この繰返しの基準は、フレームごとであることがある。他の例では、コンテンツ特性分析ユニット152は、この決定を1回実行することができる。その上、コンテンツ特性分析ユニット152は、チャンネルの総数と、チャンネルコヒーレント成分チャンネルおよび拡散成分の割当てとを繰り返し決定することができる。いくつかのそのような例では、この繰返しの基準は、フレームごとであることがある。他の例では、コンテンツ特性分析ユニット152は、この決定を1回実行することができる。いくつかの例では、コンテンツ特性分析ユニット152は、Vベクトルを量子化するのに使用するためのコードブックを繰り返し選択することができる。いくつかのそのような例では、この繰返しの基準は、フレームごとであることがある。他の例では、コンテンツ特性分析ユニット152は、この決定を1回実行することができる。
[0109]回転ユニット154は、HOA係数の回転演算を実行することができる。本開示の他の場所で(たとえば、図5Aおよび図5Bに関して)説明されるように、回転演算を実行することによって、SHC27を表すために必要とされるビットの数が減少することができる。いくつかの例では、回転ユニット152によって実行される回転分析は、特異値分解(SVD)分析の一例である。主成分分析(PCA)、独立成分分析(ICA)、およびカルーネン−レーベ変換(KLT)は、適用可能であり得る関連技法である。
[0110]この点に関して、技法は、音場について説明する複数の階層的な要素からなるビットストリームを生成する方法を提供することができ、ここで、第1の例では、方法は、複数の階層的な要素の数を減少させるように音場を表す複数の階層的な要素を球面調和関数領域から別の領域に変換することと、音場がどのように変換されたかについて説明するビットストリーム内の変換情報を指定することとを備える。
[0111]第2の例では、第1の例の方法、ここでは、複数の階層的な要素を変換することは、複数の階層的な要素に対してベクトルベースの変換を実行することを備える。
[0112]第3の例では、第2の例の方法、ここでは、ベクトルベースの変換を実行することは、複数の階層的な要素に対して特異値分解(SVD)、主成分分析(PCA)、およびカルーネン−レーベ変換(KLT)のうち1つまたは複数を実行することを備える。
[0113]第4の例では、デバイスは、複数の階層的な要素の数を減少させるように音場を表す複数の階層的な要素を球面調和関数領域から別の領域に変換し、音場がどのように変換されたかについて説明するビットストリーム内の変換情報を指定するように構成された1つまたは複数のプロセッサを備える。
[0114]第5の例では、第4の例のデバイス、ここでは、1つまたは複数のプロセッサは、複数の階層的な要素を変換するとき、複数の階層的な要素に対してベクトルベースの変換を実行するように構成される。
[0115]第6の例では、第5の例のデバイス、ここでは、1つまたは複数のプロセッサは、ベクトルベースの変換を実行するとき、複数の階層的な要素に対して特異値分解(SVD)、主成分分析(PCA)、およびカルーネン−レーベ変換(KLT)のうち1つまたは複数を実行するように構成される。
[0116]第7の例では、デバイスは、複数の階層的な要素の数を減少させるように音場を表す複数の階層的な要素を球面調和関数領域から別の領域に変換するための手段と、音場がどのように変換されたかについて説明するビットストリーム内の変換情報を指定するための手段とを備える。
[0117]第8の例では、第7の例のデバイス、ここでは、複数の階層的な要素を変換するための手段は、複数の階層的な要素に対してベクトルベースの変換を実行するための手段を備える。
[0118]第9の例では、第8の例のデバイス、ここでは、ベクトルベースの変換を実行するための手段は、複数の階層的な要素に対して特異値分解(SVD)、主成分分析(PCA)、およびカルーネン−レーベ変換(KLT)のうち1つまたは複数を実行するための手段を備える。
[0119]第10の例では、非一時的コンピュータ可読記憶媒体は、実行されると1つまたは複数のプロセッサに複数の階層的な要素の数を減少させるように音場を表す複数の階層的な要素を球面調和関数領域から別の領域に変換させ、音場がどのように変換されたかについて説明するビットストリーム内の変換情報を指定させる命令がその上に記憶されている。
[0120]第11の例では、方法は、複数の階層的な要素の数を減少させるように音場について説明する複数の階層的な要素音場が球面調和関数領域から別の領域にどのように変換されたかについて説明する平行移動情報を決定するためにビットストリームを解析することと、複数の階層的な要素に基づいて音場を再現するときに、変換された複数の階層的な要素に基づいて複数の階層的な要素を再構築することとを備える。
[0121]第12の例では、第11の例の方法、ここでは、変換情報は複数の階層的な要素の数を減少させるためにベクトルベースの分解を使用して複数の階層的な要素がどのように変換されたかについて説明し、およびここでは、音場を変換することは、複数の階層的な要素に基づいて音場を再現するとき、ベクトルベース分解された複数の階層的な要素に基づいて複数の階層的な要素を再構築することを備える。
[0122]第13の例では、第12の例の方法、ここでは、ベクトルベースの分解は、特異値分解(SVD)、主成分分析(PCA)、およびカルーネン−レーベ変換(KLT)のうち1つまたは複数を備える。
[0123]第14の例では、デバイスは、複数の階層的な要素の数を減少させるように音場について説明する複数の階層的な要素音場が球面調和関数領域から別の領域にどのように変換されたかについて説明する平行移動情報を決定するためにビットストリームを解析し、複数の階層的な要素に基づいて音場を再現するときに、変換された複数の階層的な要素に基づいて複数の階層的な要素を再構築するように構成された1つまたは複数のプロセッサを備える。
[0124]第15の例では、第14の例のデバイス、ここでは、変換情報は複数の階層的な要素の数を減少させるためにベクトルベースの分解を使用して複数の階層的な要素がどのように変換されたかについて説明し、およびここでは、1つまたは複数のプロセッサは、複数の階層的な要素に基づいて音場を再現するとき、ベクトルベース分解された複数の階層的な要素に基づいて複数の階層的な要素を再構築するように構成される。
[0125]第16の例では、第15の例のデバイス、ここでは、ベクトルベースの分解は、特異値分解(SVD)、主成分分析(PCA)、およびカルーネン−レーベ変換(KLT)のうち1つまたは複数を備える。
[0126]第17の例では、デバイスは、複数の階層的な要素の数を減少させるように音場について説明する複数の階層的な要素音場が球面調和関数領域から別の領域にどのように変換されたかについて説明する平行移動情報を決定するためにビットストリームを解析するための手段と、複数の階層的な要素に基づいて音場を再現するときに、変換された複数の階層的な要素に基づいて複数の階層的な要素を再構築するための手段とを備える。
[0127]第18の例では、第17の例のデバイス、ここでは、変換情報は複数の階層的な要素の数を減少させるためにベクトルベースの分解を使用して複数の階層的な要素がどのように変換されたかについて説明し、およびここでは、音場を変換するための手段は、複数の階層的な要素に基づいて音場を再現するとき、ベクトルベース分解された複数の階層的な要素に基づいて複数の階層的な要素を再構築するための手段を備える。
[0128]第19の例では、第18の例のデバイス、ここでは、ベクトルベースの分解は、特異値分解(SVD)、主成分分析(PCA)、およびカルーネン−レーベ変換(KLT)のうち1つまたは複数を備える。
[0129]第20の例では、実行すると1つまたは複数のプロセッサに複数の階層的な要素の数を減少させるように音場について説明する複数の階層的な要素音場が球面調和関数領域から別の領域にどのように変換されたかについて説明する平行移動情報を決定するためにビットストリームを解析させ、複数の階層的な要素に基づいて音場を再現するときに、変換された複数の階層的な要素に基づいて複数の階層的な要素を再構築させる命令がその上に記憶された非一時的コンピュータ可読記憶媒体。
[0130]図4Bの例では、コヒーレント成分抽出ユニット156は、回転されたSHC27を回転ユニット154から受け取る。その上、コヒーレント成分抽出ユニット156は、回転されたSHC27から、音場のコヒーレント成分に関連付けられた回転されたSHC27の成分を抽出する。
[0131]さらに、コヒーレント成分抽出ユニット156は、1つまたは複数のコヒーレント成分チャンネルを生成する。コヒーレント成分チャンネルの各々は、音場のコヒーレント係数に関連付けられた回転されたSHC27の異なるサブセットを含むことができる。図4Bの例では、コヒーレント成分抽出ユニット156は、1から16のコヒーレント成分チャンネルを生成することができる。コヒーレント成分抽出ユニット156によって生成されるコヒーレント成分チャンネルの数は、コンテンツ特性分析ユニット152によって音場のコヒーレント成分に割り振られるチャンネルの数によって決定され得る。コヒーレント成分抽出ユニット156によって生成されるコヒーレント成分チャンネルのビットレートは、コンテンツ特性分析ユニット152によって決定され得る。
[0132]同様に、図4Bの例では、拡散成分抽出ユニット158は、回転されたSHC27を回転ユニット154から受け取る。その上、拡散成分抽出ユニット158は、回転されたSHC27から、音場の拡散成分に関連付けられた回転されたSHC27の成分を抽出する。
[0133]さらに、拡散成分抽出ユニット158は、1つまたは複数の拡散成分チャンネルを生成する。拡散成分チャンネルの各々は、音場の拡散係数に関連付けられた回転されたSHC27の異なるサブセットを含むことができる。図4Bの例では、拡散成分抽出ユニット158は、1から9の拡散成分チャンネルを生成することができる。拡散成分抽出ユニット158によって生成される拡散成分チャンネルの数は、コンテンツ特性分析ユニット152によって音場の拡散成分に割り振られるチャンネルの数によって決定され得る。拡散成分抽出ユニット158によって生成される拡散成分チャンネルのビットレートは、コンテンツ特性分析ユニット152によって決定され得る。
[0134]図4Bの例では、コーディングエンジン160は、図4Aの例に関して、今回は拡散成分およびコヒーレント成分のみに対して、上記で説明したように動作することができる。マルチプレクサ164(「MUX164」)は、ビットストリーム31を生成するために、サイドデータ(たとえば、空間分析ユニット150によって決定される最適な角度)とともに、符号化されたコヒーレント成分チャンネルと符号化された拡散成分チャンネルとを多重化することができる。
[0135]図5Aおよび図5Bは、音場40を回転させるために本開示において説明される技法の様々な態様を実行する一例を示す図である。図5Aは、本開示で説明される技法の様々な態様による回転の前の音場40を示す図である。図5Aの例では、音場40は、ロケーション42Aおよび42Bと示される、高圧の2つのロケーションを含む。これらのロケーション42Aおよび42B(「ロケーション42」)は、無限でない傾きを有する線44に沿って存在する(垂直線は無限の傾きを有するので、これは垂直でない線を指す別の方法である)。ロケーション42はx座標およびy座標に加えてz座標を有することを考えると、高次球面基底関数は、この音場40を適切に表すために必要とされ得る(これらの高次球面基底関数は、音場の上部部分と下部部分または非水平部分について説明するので)。音場40をSHC27に直接的に減少させるのではなく、ビットストリーム生成デバイス36は、ロケーション42を接続する線44が垂直であるまで、音場40を回転させることができる。
[0136]図5Bは、ロケーション42を接続する線44が垂直になるまで回転された後の音場40を示す図である。この様式で音場40を回転させた結果、回転された音場40はもはや非垂直軸(たとえば、X軸および/またはY軸)に沿って圧力(またはエネルギー)のロケーションを持たないことを考えると、SHC27は、SHC27の非ゼロ副次数サブセットがゼロと指定されるように導出され得る。このようにして、ビットストリーム生成デバイス36は、非ゼロ値を有する回転されたSHC27の数を減少させるために音場40を回転させ、変換させ、またはより一般的には、調整することができる。次いで、ビットストリーム生成デバイス36は、上記で説明されたように、回転されたSHC27のゼロ副次数サブセットに対して、回転されたSHC27の非ゼロ副次数サブセットに低いビットレートを割り振ることができる。ビットストリーム生成デバイス36はまた、多くの場合は上記で説明された様式で方位角と仰角とを表すことによって、音場40がどのように回転されたかを示す、ビットストリーム31内の回転情報を指定することができる。
[0137]代替または追加として、次いで、ビットストリーム生成デバイス36は、SHC27のこれらの高次サブセットがゼロ値を有することを識別する32ビット符号付き数を知らせるのではなく、SHC27のこれらの高次サブセットが知らされないことをビットストリーム31のフィールド内で知らせることができる。抽出デバイス38は、これらの例では、回転されたSHC27のこれらの知らされなかったサブセットはゼロ値を有し、SHC27に基づいて音場40を再現するとき、図5Aの例に示された音場40に音場40が似ているように音場40を回転させるために回転を実行することを暗示することができる。このようにして、ビットストリーム生成デバイス36は、ビットストリーム31内で指定されるために必要とされるSHC27の数を減少させる、または回転されたSHC27の非ゼロ副次数サブセットに関連付けられたビットレートを減少させることができる。
[0138]「空間コンパクション(compaction)」アルゴリズムは、音場の最適な回転を決定するために使用され得る。一実施形態では、ビットストリーム生成デバイス36は、可能な方位角と仰角の組合せ(すなわち、上記の例では1024×512の組合せ)のすべてを反復し、各組合せに対して音場を回転させ、閾値を上回るSHC27の数を計算するためにアルゴリズムを実行することができる。閾値を上回るSHC27の最小数を生じさせる方位角/仰角候補の組合せは、「最適な回転」と呼ばれることがあるものと考えられ得る。この回転された形態では、音場は、音場を表すためのSHC27の最小数を必要とすることがあり、次いで、コンパクションされると考えられ得る。いくつかの例では、調整は、この最適な回転を備えることがあり、上記で説明された調整情報は、この回転(「最適な回転」と呼ばれることがある)情報(方位角角度および仰角角度に関する)を含むことがある。
[0139]いくつかの例では、方位角角度と仰角角度とを指定するのではなく、ビットストリーム生成デバイス36は、一例としてオイラー角の形態をした追加の角度を指定することがある。オイラー角は、Z軸、前X軸、および前Z軸のまわりでの回転の角度を指定する。本開示では方位角角度と仰角角度の組合せに関して説明されているが、本開示の技法は、方位角角度と仰角角度のみを指定することに限定されるべきではなく、上記で述べられた3つのオイラー角を含む任意の数の角度を指定することを含んでよい。この意味で、ビットストリーム生成デバイス36は、音場について説明するのに関連する情報を提供しビットストリーム内の回転情報としてオイラー角を指定する複数の階層的な要素の数を減少させるために音場を回転させることがある。オイラー角は、前述のように、音場がどのように回転されたかについて説明することができる。オイラー角を使用するとき、ビットストリーム抽出デバイス38は、オイラー角を含む回転情報を決定するためにビットストリームを解析し、さらに、音場について説明するのに関連する情報を提供する複数の階層的な要素のビットに基づいて音場を再現するとき、オイラー角に基づいて音場を回転させることができる。
[0140]その上、いくつかの例では、これらの角度をビットストリーム31内で明示的に指定するのではなく、ビットストリーム生成デバイス36は、回転を指定する1つまたは複数の角度のあらかじめ定義された組合せに関連付けられたインデックス(「回転インデックス」と呼ばれることがある)を指定することができる。言い換えれば、回転情報は、いくつかの例では、回転インデックスを含むことがある。これらの例では、ゼロの値などの回転インデックスの所与の値は、回転が実行されなかったことを示すことがある。この回転インデックスは、回転テーブルに関連して使用され得る。すなわち、ビットストリーム生成デバイス36は、方位角角度と仰角角度の組合せの各々に関するエントリを備える回転テーブルを含むことができる。
[0141]代替的に、回転テーブルは、方位角角度と仰角角度の各組合せを表す各行列変換に関するエントリを含むことがある。すなわち、ビットストリーム生成デバイス36は、方位角角度と仰角角度の組合せの各々によって音場を回転させるための各行列変換に関するエントリを有する回転テーブルを記憶することがある。一般に、ビットストリーム生成デバイス36はSHC27を受け取り、回転が実行されるとき、以下の式に従ってSHC27’を導出する。
Figure 2016513811
上記の式では、SHC27’は、第2の基準フレーム(EncMat2)に関して音場を符号化するための符号化行列、第1の基準フレーム(InvMat1)に関してSHC27を音場に戻すための逆行列、およびSHC27の関数として算出される。EncMat2は25×32の大きさであり、InvMat2は32×25の大きさである。SHC27’とSHC27の両方が25の大きさであり、SHC27’は、目立つオーディオ情報を指定しないSHC27’の除去により、さらに減少されてよい。EncMat2は、方位角角度と仰角角度の各組合せに対して変化してもよいが、InvMat1は、方位角角度と仰角角度の各組合せに対して変化しないままであってよい。回転テーブルは、各異なるEncMat2をInvMat1に乗算した結果を記憶するためのエントリを含んでよい。
[0142]図6は、第1の基準フレームに従って捕捉され、次いで第2の基準フレームに対して音場を表すために本開示において説明される技法に従って回転される例示的な音場を示す図である。図6の例では、Eigenマイクロフォン46を取り囲む音場は、図6の例ではX1軸、Y1軸、およびZ1軸によって示される第1の基準フレームを仮定して捕捉される。SHC27は、この第1の基準フレームに対して、音場について説明する。InvMat1は、SHC27を変換して音場に戻し、音場を、図6の例ではX2軸、Y2軸、およびZ2軸によって示される第2の基準フレームに回転させることを可能にする。上記で説明されたEncMat2は、音場を回転させ、この回転された音場について第2の基準フレームに対して説明するSHC27’を生成することができる。
[0143]いずれにしても、上記の式は、次のように導出され得る。音場は、正面がX軸の方向と見なされるように、特定の座標系を用いて記録されることを考えると、Eigenmikeの32のマイクロフォン位置(または他のマイクロフォン構成)は、この基準座標系から定義される。次いで、音場の回転は、この基準フレームの回転と見なされ得る。仮定される基準フレームに対して、SHC27は、次のように計算され得る。
Figure 2016513811
上記の式では、
Figure 2016513811
は、i番目のマイクロフォン(ここで、この例では、iは1〜32とすることができる)の位置(Posi)における球面基底関数を表す。miciベクトルは、時刻tに対するi番目のマイクロフォンのためのマイクロフォン信号を示す。位置(Posi)は、第1の基準フレーム(すなわち、この例では、回転の前の基準フレーム)におけるマイクロフォンの位置を指す。
[0144]上記の式は、代替的に、上記で示された数式に関して
Figure 2016513811
と表され得る。
[0145]音場を(または第2の基準フレーム内で)回転させるために、位置(Posi)は第2の基準フレーム内で計算される。元のマイクロフォン信号が存在する限り、音場は、恣意的に回転されてよい。しかしながら、元のマイクロフォン信号(mici(t))は入手不可能なことが多い。その場合、問題は、マイクロフォン信号(mici(t))をSHC27からどのように取り出すかであることがある。(32マイクロフォンEigenmikeの場合のように)T字型設計が使用される場合、この問題の解決策は、以下の式を解くことによって達成され得る。
Figure 2016513811
このInvMat1は、第1の基準フレームに対して指定されたマイクロフォンの位置に従って算出される球面調和基底関数を指定することができる。この式は、前述のように、[mi(t)]=[Es(θ,φ)]-1[SHC]として表されることもある。
[0146]上記では「マイクロフォン信号」と呼ばれるが、マイクロフォン信号は、「マイクロフォン信号」それ自体ではなくT字型設計32マイクロフォンカプセル位置を使用する空間領域表現を指すことがある。その上、32マイクロフォンカプセル位置に関して説明しているが、技法は、16、64、または任意の他の数(2の倍数でない数を含む)を含む任意の数のマイクロフォンカプセル位置に対して実行されてよい。
[0147]マイクロフォン信号(mici(t))が、ひとたび上記の式によって取り出されると、音場について説明するマイクロフォン信号(mici(t))は、第2の基準フレームに対応するSHC27’を算出するために回転され、以下の式になり得る。
Figure 2016513811
[0148]EncMat2は、回転された位置(Posi’)から球面調和基底関数を指定する。このようにして、EncMat2は、方位角角度と仰角角度の組合せを効果的に指定することができる。したがって、回転テーブルが、方位角角度と仰角角度の各組合せに対する
Figure 2016513811
の結果を記憶するとき、回転テーブルは、方位角角度と仰角角度の各組合せを効果的に指定する。上記の式は、
Figure 2016513811
と表され得、
ここで、θ2,φ2は、第2の方位角角度および第2の仰角角度異なる形態θ1,φ1によって表される第1の方位角角度および仰角角度を表す。θ1,φ1は第1の基準フレームに対応し、θ2,φ2は第2の基準フレームに対応する。したがって、InvMat1は[Es(θ1,φ1)]-1に対応することができ、EncMat2は[Es(θ2,φ2)]に対応することができる。
[0149]上記は、次数nの球ベッセル関数を指すjn(・)関数によって周波数領域におけるSHC27の導出を示す様々な式において上記で表されるフィルタリング演算を考慮しない算出のより簡略化されたバージョンを表すことができる。時間領域では、このjn(・)関数は、特定の次数nに固有のフィルタリング演算を表す。フィルタリングにより、回転は、次数ごとに実行され得る。例示するために、以下の式について考える。
Figure 2016513811
Figure 2016513811
[0150]様々な例では、そのようなフィルタリング演算に関して説明しているが、技法は、これらのフィルタリング演算なしで実行されてよい。言い換えれば、前述のように、フィルタリング演算を実行したりSHC27に適用したりせずに、様々な形態の回転が実行され得る。この演算では、異なる「n」SHCは互いと相互作用しないので、フィルタは「n」のみに依存し、「m」に依存しないことを考えるとフィルタは必要とされないことがある。たとえば、回転を実行するためにウィンガーのD行列がSHC27に適用されることがあり、ここで、このウィンガーのD行列の適用はフィルタリング演算の適用を必要としないことがある。SHC27を変換してマイクロフォン信号に戻さない結果、フィルタリング演算は、この変換で必要とされ得る。その上、「n」は「n」にしかならないことを考慮すると、SHC27の2m+1のブロックに対して回転が行われ、残りはゼロであってよい。より効率的なメモリ割振り(おそらくソフトウェア内での)のために、回転は、本開示で説明されるように、次数ごとに行われることがある。その上、n=0には1つのSHC27のみが存在するので、回転は、常に同じである。技法の様々な実装形態は、効率(算出および/またはメモリ消費に関して)を提供するために、n=0においてSHC27のこの1つを利用することができる。
[0151]これらの式から、bn(t)は各次数に対して異なるので、次数に対する回転されたSHC27’は個別に行われる。その結果、上記の式は、回転されたSHC27’の第1次サブセットを算出するために、次のように変更されてよい。
Figure 2016513811
SHC27の3つの第1次サブセットが存在することを考えると、SHC27’ベクトルおよびSHC27ベクトルの各々は、上記の式では、大きさは3である。同様に、第2次の場合、以下の式が適用され得る。
Figure 2016513811
この場合も、SHC27の5つの第2次サブセットが存在することを考えると、SHC27’ベクトルおよびSHC27ベクトルの各々は、上記の式では、大きさは5である。他の次数すなわち第3次および第4次に対する残りの式は、(EncMat2の行の数、InvMat1の列の数、ならびに第3次および第4次のSHC27ベクトルおよびSHC27’ベクトルの大きさが第3次球面調和基底関数および第4次球面調和基底関数の各々の副次数の数(m×2+1)に等しいので)行列の大きさに関する同じパターンに従って、上記で説明された式と類似であってよい。第4次の表現と説明されているが、技法は任意の次数に適用されてよく、第4次に限定されるべきではない。
[0152]したがって、ビットストリーム生成デバイス36は、いわゆる最適な回転を識別しようとして、方位角と仰角角度のあらゆる組合せに対して、この回転演算を実行することができる。ビットストリーム生成デバイス36は、この回転演算を実行した後、閾値を上回るSHC27’の数を算出することができる。いくつかの例では、ビットストリーム生成デバイス36は、オーディオフレームなどの持続時間にわたって音場を表す一連のSHC27’を導出するために、この回転を実行することができる。この持続時間にわたって音場を表す一連のSHC27’を導出するためにこの回転を実行することによって、ビットストリーム生成デバイス36は、フレームまたは他の長さよりも短い持続時間にわたって音場について説明するSHC27の各セットに対してこれを行うために比較すると、実行されなければならない回転演算の数を減少させることができる。いずれにしても、ビットストリーム生成デバイス36は、このプロセス全体を通して、閾値よりも大きいSHC27’の最小数を有するSHC27’のビットを保存することができる。
[0153]しかしながら、方位角と仰角角度のあらゆる組合せに対してこの回転演算を実行することは、プロセッサの負荷が高かったり時間がかかったりすることがある。その結果、ビットストリーム生成デバイス36は、回転アルゴリズムのこの「力づくの(brute force)」実装形態と特徴付けられるものを実行しないことがある。代わりに、ビットストリーム生成デバイス36は、一般に良いコンパクションを提供する方位角角度と仰角角度のおそらく既知の(統計学的に)組合せのサブセットに対して回転を実行し、サブセット内の他の組合せと比較して良いコンパクションを提供するこのサブセットのそれらの近くの組合せに対してさらなる回転を実行することがある。
[0154]別の代替として、ビットストリーム生成デバイス36は、組合せの既知のサブセットのみに対してこの回転を実行することがある。別の代替として、ビットストリーム生成デバイス36は、組合せの軌道を(空間的に)たどり、この組合せの起動に対して回転を実行することがある。別の代替として、ビットストリーム生成デバイス36は、閾値を上回る非ゼロ値を有するSHC27’の最大数を定義するコンパクション閾値を指定することがある。このコンパクション閾値は、ビットストリーム生成デバイス36が回転を実行し、設定された閾値を上回る値を有するSHC27’の数がコンパクション閾値以下である(または、いくつかの例では、コンパクション閾値よりも少ない)と決定するとき、ビットストリーム生成デバイス36は、残りの組合せに対して追加の回転演算を実行するのを止めるように、調査に対する停止点を効果的に設定することができる。さらに別の代替として、ビットストリーム生成デバイス36は、組合せの階層的に配置された木(または他のデータ構造)を通り、現在の組合せに対して回転演算を実行し、閾値よりも大きい非ゼロ値を有するSHC27’の数に応じて木を右または左に(たとえば、二分木の場合)通ることがある。
[0155]この意味で、これらの代替の各々は、第1の回転演算と第2の回転演算とを実行することと、閾値よりも大きい非ゼロ値を有するSHC27’の最小数という結果になる第1の回転演算と第2の回転演算のうち1つを特定するために第1の回転演算と第2の回転演算とを実行した結果を比較することとを含む。したがって、ビットストリーム生成デバイス36は、第1の方位角角度および第1の仰角角度に従って音場を回転させ、音場について説明するのに関連する情報を提供する第1の方位角角度および第1の仰角角度に従って回転された音場を表す複数の階層的な要素の第1の数を決定するために、音場に対して第1の回転演算を実行することができる。ビットストリーム生成デバイス36はまた、第2の方位角角度および第2の仰角角度に従って音場を回転させ、音場について説明するのに関連する情報を提供する第2の方位角角度および第2の仰角角度に従って回転された音場を表す複数の階層的な要素の第2の数を決定するために、音場に対して第2の回転演算を実行することができる。その上、ビットストリーム生成デバイス36は、複数の階層的な要素の第1の数と複数の階層的な要素の第2の数の比較に基づいて、第1の回転演算または第2の回転演算を選択することができる。
[0156]いくつかの例では、回転アルゴリズムは持続時間に対して実行されることがあり、ここで、回転アルゴリズムのその後の呼出しは、回転アルゴリズムの過去の呼出しに基づいて回転演算を実行することができる。言い換えれば、回転アルゴリズムは、過去の持続時間にわたって音場を回転させたとき、決定された過去の回転情報に基づいて適応的であることがある。たとえば、ビットストリーム生成デバイス36は、第1の持続時間たとえばオーディオフレームにわたってSHC27’を識別するために、この第1の持続時間にわたって音場を回転させることができる。ビットストリーム生成デバイス36は、上記で説明された方法のうちいずれかにおいて、ビットストリーム31内で回転情報とSHC27’とを指定することができる。この回転情報は、第1の持続時間にわたって音場の回転について説明するので、第1の回転情報と呼ばれることがある。次いで、ビットストリーム生成デバイス31は、第2の持続時間たとえば第2のオーディオフレームにわたってSHC27’を識別するために、この第1の回転情報に基づいて、この第2の持続時間にわたって音場を回転させることができる。ビットストリーム生成デバイス36は、一例として、方位角角度と仰角角度の「最適な」組合せに対して調査を初期化するために、第2の持続時間にわたって第2の回転演算を実行するとき、この第1の回転情報を利用することができる。次いで、ビットストリーム生成デバイス36は、ビットストリーム31内で第2の持続時間(「第2の回転情報」と呼ばれることがある)に対するSHC27’および対応する回転情報を指定することができる。
[0157]処理時間および/または消費を減少させるために回転アルゴリズムを実施するいくつかの異なる方法に関して上記で説明されているが、技法は、「最適な回転」と呼ばれ得るものの識別を減少または高速化し得る任意のアルゴリズムに対して実行され得る。その上、技法は、非最適な回転を識別するが、速度またはプロセッサもしくは他のリソースの利用に関して測定されることが多い、他の態様では実行を改善し得る任意のアルゴリズムに対して実行され得る。
[0158]図7A〜図7Eは各々、本開示で説明される技法に従って形成されるビットストリーム31A〜31Eを示す図である。図7Aの例では、ビットストリーム31Aは、上記で図3に示されたビットストリーム31の一例を表すことができる。ビットストリーム31Aは、SHC存在フィールド50と、SHC27’を格納するフィールド(このフィールドは「SHC27’」と示される)とを含む。SHC存在フィールド50は、SHC27の各々に対応するビットを含むことができる。SHC27’は、SHC27の数よりも数が少ないことがある、ビットストリーム内で指定されるSHC27のSHC27’を表すことができる。一般に、SHC27’の各々は、非ゼロ値を有するSHC27のSHC27’である。前述のように、任意の所与の音場の第4次表現の場合、(1+4)2すなわち25のSHCが必要とされる。これらのSHCのうち1つまたは複数を消去し、これらのゼロ値が付けられたSHCを単一ビットで置き換えることによって31ビットを節約することができ、この31ビットは、音場の他の部分を表すためにより詳細に割り振られてもよいし、効率的な帯域幅利用を容易にするために除去されてもよい。
[0159]図7Bの例では、ビットストリーム31Bは、上記で図3に示されたビットストリーム31の一例を表すことができる。ビットストリーム31Bは、変換情報フィールド52(「変換情報52」)と、SHC27’を格納するフィールド(このフィールドは「SHC27’」と示される)とを含む。変換情報52は、前述のように、変換情報、回転情報、および/または音場への調整を示す任意の他の形態の情報を備えることができる。いくつかの例では、変換情報52はまた、ビットストリーム31B内でSHC27’と指定されるSHC27の最高次を指定することができる。すなわち、変換情報52は3の次数を示すことができ、抽出デバイス38はこれを、SHC27’がSHC27のSHC27’までを含むことを示し、3の次数を有するSHC27のSHC27’を含むと理解することができる。次いで、抽出デバイス38は、4以上の次数を有するSHC27をゼロに設定し、それによって、ビットストリーム内の4以上の次数のSHC27の明示的な信号伝達を潜在的に除去するように構成され得る。
[0160]図7Cの例では、ビットストリーム31Cは、上記で図3に示されたビットストリーム31の一例を表すことができる。ビットストリーム31Cは、変換情報フィールド52(「変換情報52」)と、SHC存在フィールド50と、SHC27’を格納するフィールド(このフィールドは「SHC27’」と示される)とを含む。上記で図7Bに関して説明されたようにSHC27のどの次数が知らされないかを理解するように構成されるのではなく、SHC存在フィールド50は、SHC27のうちどれがビットストリーム31C内でSHC27’と指定されるかを明示的に知らせることができる。
[0161]図7Dの例では、ビットストリーム31Dは、上記で図3に示されたビットストリーム31の一例を表すことができる。ビットストリーム31Dは、次数フィールド60(「次数60」)と、SHC存在フィールド50と、方位角フラグ62(「AZF62」)と、仰角フラグ64(「ELF64」)と、方位角角度フィールド66(「方位角66」)と、仰角角度フィールド68(「仰角68」)と、SHC27’を格納するフィールド(この場合も、このフィールドは「SHC27’」と示される)とを含む。次数フィールド60は、SHC27’の次数、すなわち、音場を表すために使用される球面基底関数の最高次数に対して上記のnによって示される次数を指定する。次数フィールド60は、8ビットフィールドであると示されているが、3(第4次を指定するために必要とされるビットの数である)などの他の様々なビットサイズであってよい。SHC存在フィールド50は、25ビットフィールドと示されている。この場合も、しかしながら、SHC存在フィールド50は、他の様々なビットサイズであってよい。SHC存在フィールド50は、SHC存在フィールド50が音場の第4次表現に対応する球面調和係数の各々のための1ビットを含み得ることを示すために、25ビットと示される。
[0162]方位角フラグ62は、方位角フィールド66がビットストリーム31D内に存在するかどうか指定する1ビットフラグを表す。方位角フラグ62が1に設定されるとき、SHC27’のための方位角フィールド66がビットストリーム31D内に存在する。方位角フラグ62がゼロに設定されるとき、SHC27’のための方位角フィールド66は、ビットストリーム31D内に存在しないかまたは指定されない。同様に、仰角フラグ64は、仰角フィールド68がビットストリーム31D内に存在するかどうか指定する1ビットフラグを表す。仰角フラグ64が1に設定されるとき、SHC27’のための仰角フィールド68がビットストリーム31D内に存在する。仰角フラグ64がゼロに設定されるとき、SHC27’のための仰角フィールド68は、ビットストリーム31D内に存在しないかまたは指定されない。1は、対応するフィールドが存在することを知らせ、ゼロは、対応するフィールドが存在しないことを知らせると説明されているが、この規則は、ゼロは、対応するフィールドがビットストリーム31D内で指定されていることを指定し、1は、対応するフィールドがビットストリーム31D内で指定されていないことを指定するように、逆にされてよい。したがって、本開示で説明される技法は、この点について限定されるべきではない。
[0163]方位角フィールド66は、ビットストリーム31D内に存在するとき方位角角度を指定する10ビットフィールドを表す。10ビットフィールドとして示されているが、方位角フィールド66は他のビットサイズであってもよい。仰角フィールド68は、ビットストリーム31D内に存在するとき仰角角度を指定する9ビットフィールドを表す。フィールド66および68で指定される方位角角度および仰角角度はそれぞれ、上記で説明された回転情報を表すフラグ62および64と連動してよい。この回転情報は、元の基準フレームにおけるSHC27を回復するように音場を回転させるために使用され得る。
[0164]SHC27’フィールドは、大きさXである可変フィールドとして示されている。SHC27’フィールドは、SHC存在フィールド50によって示されるビットストリーム内で指定されるSHC27’の数により変化してよい。大きさXは、SHC存在フィールド50内のSHC27’の数×32ビット(各SHC27’の大きさである)の関数として導出され得る。
[0165]図7Eの例では、ビットストリーム31Eは、上記で図3に示されたビットストリーム31の別の例を表すことができる。ビットストリーム31Eは、次数フィールド60(「次数60」)と、SHC存在フィールド50と、回転インデックスフィールド70と、SHC27’を格納するフィールド(このフィールドは「SHC27’」と示される)とを含む。次数フィールド60、SHC存在フィールド50、およびSHC27’フィールドは、上記で説明されたフィールドに実質的に類似してよい。回転インデックスフィールド70は、仰角角度と方位角角度の1024×512(すなわち、言い換えれば、524288)の組合せのうち1つを指定するために使用される20ビットフィールドを表すことができる。いくつかの例では、この回転インデックスフィールド70を指定するために19ビットのみが使用されることがあり、ビットストリーム生成デバイス36は、回転演算が行われたかどうか(および、したがって、回転インデックスフィールド70がビットストリーム内に存在するかどうか)示すために、ビットストリーム内で追加フラグを指定することがある。この回転インデックスフィールド70は、上記で述べられた回転インデックスを指定し、回転インデックスは、ビットストリーム生成デバイス36とビットストリーム抽出デバイス38の両方に共通する回転テーブル内のエントリを指すことができる。この回転テーブルは、いくつかの例では、方位角と仰角角度の異なる組合せを格納することがある。代替的に、回転テーブルは、上記で説明された行列を格納することがあり、この行列は、方位角と仰角角度の異なる組合せを行列形態で効果的に格納する。
[0166]図8は、本開示において説明される技法の回転態様を実施する際の図3の例に示されるビットストリーム生成デバイス36の例示的な動作を示す流れ図である。最初に、ビットストリーム生成デバイス36は、上記で説明された様々な回転アルゴリズムのうち1つまたは複数に従って方位角角度と仰角角度の組合せを選択することができる(80)。次いで、ビットストリーム生成デバイス36は、選択された方位角および仰角角度によって音場を回転させることができる(82)。上記で説明されたように、ビットストリーム生成デバイス36は、上記で述べられたInvMat1を使用してSHC27から音場を最初に導出することができる。ビットストリーム生成デバイス36はまた、回転された音場を表すSHC27’を決定することができる(84)。別個のステップまたは動作であると説明されているが、ビットストリーム生成デバイス36は、方位角角度と仰角角度の組合せの選択を表す変換([EncMat2][InvMat1]の結果を表すことができる)を適用し、SHC27から音場を導出し、音場を回転させ、回転された音場を表すSHC27’を決定することができる。
[0167]いずれにしても、ビットストリーム生成デバイス36は、次いで、閾値よりも大きいいくつかの決定されたSHC27’を算出し、この数を、前の方位角角度と仰角角度の組合せに対する前の反復のために算出された数と比較することができる(86、88)。第1の方位角角度と仰角角度の組合せに対する第1の反復では、この比較は、あらかじめ定義された前の数(ゼロに設定され得る)に対するものとすることができる。いずれにしても、SHC27’の決定された数が前の数よりも小さい場合(「はい」88)、ビットストリーム生成デバイス36は、SHC27’と、方位角角度と、仰角角度とを格納し、多くの場合、回転アルゴリズムの前の反復から格納された、前のSHC27’、方位角角度、および仰角角度を置き換える(90)。
[0168]SHC27’の決定された数が前の数よりも小さくない場合(「いいえ」88)、または以前に格納されたSHC27’、方位角角度、および仰角角度の代わりにSHC27’と、方位角角度と、仰角角度とを格納した後、ビットストリーム生成デバイス36は、回転アルゴリズムが終了したかどうか決定することができる(92)。すなわち、ビットストリーム生成デバイス36は、一例として、方位角角度と仰角角度のすべての利用可能な組合せが評価されたかどうか決定することができる。他の例では、ビットストリーム生成デバイス36は、ビットストリーム生成デバイス36が回転アルゴリズムを実行することを終了するように、他の基準が満たされたかどうか(組合せの定義されたサブセットのすべてが実行された、所与の軌道が通られたかどうか、階層木が葉ノードまで通られたかどうかなど)決定することができる。終了されていない場合(「いいえ」92)、ビットストリーム生成デバイス36は、別の選択された組合せに対して上記のプロセスを実行することができる(80〜92)。終了した場合(「はい」92)、ビットストリーム生成デバイス36は、上記で説明された様々な方法のうち1つで、格納されたSHC27’と、方位角角度と、仰角角度とをビットストリーム31内で指定することができる(94)。
[0169]図9は、本開示において説明される技法の変換態様を実行する際の図4の例に示されるビットストリーム生成デバイス36の例示的な動作を示す流れ図である。最初に、ビットストリーム生成デバイス36は、線形可逆変換を表す行列を選択することができる(100)。線形可逆変換を表す行列の一例は、[EncMat1][IncMat1]の結果である、上記で示された行列とすることができる。次いで、ビットストリーム生成デバイス36は、音場を変換するために、この行列を音場に適用することができる(102)。ビットストリーム生成デバイス36はまた、回転された音場を表すSHC27’を決定することができる(104)。別個のステップまたは動作であると説明されているが、ビットストリーム生成デバイス36は、方位角角度と仰角角度の組合せの選択を表す変換([EncMat2][InvMat1]の結果を表すことができる)を適用し、SHC27から音場を導出し、音場を変換し、変換された音場を表すSHC27’を決定することができる。
[0170]いずれにしても、ビットストリーム生成デバイス36は、次いで、閾値よりも大きいいくつかの決定されたSHC27’を算出し、この数を、変換された行列の前の適用に対する前の反復のために算出された数と比較することができる(106、108)。SHC27’の決定された数が前の数よりも小さい場合(「はい」108)、ビットストリーム生成デバイス36は、SHC27’と、行列(または、行列に関連付けられたインデックスなどの、その何らかの微分)とを格納し、多くの場合、回転アルゴリズムの前の反復から格納された、前のSHC27’と行列(またはその微分)とを置き換える(110)。
[0171]SHC27’の決定された数が前の数よりも小さくない場合(「いいえ」108)、または以前に格納されたSHC27’および行列の代わりにSHC27’と、行列とを格納した後、ビットストリーム生成デバイス36は、変換アルゴリズムが終了したかどうか決定することができる(112)。すなわち、ビットストリーム生成デバイス36は、一例として、すべての利用可能な変換行列が評価されたかどうか決定することができる。他の例では、ビットストリーム生成デバイス36は、ビットストリーム生成デバイス36が変換アルゴリズムを実行することを終了するように、他の基準が満たされたかどうか(利用可能な変換行列の定義されたサブセットのすべてが実行された、所与の軌道が通られたかどうか、階層木が葉ノードまで通られたかどうかなど)決定することができる。終了されていない場合(「いいえ」112)、ビットストリーム生成デバイス36は、別の選択された変換行列に対して上記のプロセスを実行することができる(100〜112)。終了した場合(「はい」112)、ビットストリーム生成デバイス36は、次いで、前述のように、SHC27’の異なる変換されたサブセットのための異なるビットレートを識別することができる(114)。ビットストリーム生成デバイス36は、次いで、ビットストリーム31を生成するために、識別されたビットレートを使用して異なるサブセットをコーディングすることができる(116)。
[0172]いくつかの例では、変換アルゴリズムは、単一の反復を実行し、単一の変換行列を評価することができる。すなわち、変換行列は、線形可逆変換を表す任意の行列を備えることができる。いくつかの例では、線形可逆変換は、音場を空間領域から周波数領域に変換することができる。そのような線形可逆変換の例としては、離散フーリエ変換(DFT)があり得る。DFTの適用は、単一の適用のみを伴うことがあり、したがって、変換アルゴリズムが終了されたかどうかを決定するステップを必ずしも含まない。したがって、技法は、図9の例に限定されるべきではない。
[0173]言い換えれば、線形可逆変換の一例は離散フーリエ変換(DFT)である。25のSHC27’は、25の複素係数のセットを形成するために、DFTによって影響を及ぼされ得る。ビットストリーム生成デバイス36はまた、DFTのビンサイズの分解能を潜在的に増加させ、たとえば高速フーリエ変換(FFT)を適用することによってDFTのより効率的な実装形態を潜在的に有するように、2の倍数である整数になるように25のSHC27’をゼロパディングすることができる。いくつかの例では、DFTの分解能を25の点以上に増加させることは、必ずしも必要とされない。変換領域では、ビットストリーム生成デバイス36は、特定のビンにスペクトルエネルギーが存在するかどうか決定するために、閾値を適用することができる。ビットストリーム生成デバイス36は、この文脈では、次いで、この閾値を下回るスペクトル係数エネルギーを破棄またはゼロ設定することができ、ビットストリーム生成デバイス36は、破棄されたまたはゼロ設定されたSHC27’のうち1つまたは複数を有するSHC27’を回復するために逆変換を適用することができる。すなわち、破棄が適用された後、閾値を下回る係数は存在せず、その結果、より少ないビットが、音場を符号化するために使用され得る。
[0174]別の線形可逆変換は、「特異値分解」と呼ばれるものを実行する行列を備えることができる。SVDに関して説明されているが、技法は、線形的に無相関なデータのセットを提供する任意の類似の変換または分解に対して実行されてよい。また、本開示における「セット」または「サブセット」への言及は、一般的に、特にそうではないと記載されない限り「非ゼロ」セットまたはサブセットを指すことを意図し、いわゆる「空のセット」を含むセットの古典的な数学的定義を指すことを意図するものではない。
[0175]代替の変換は主成分分析を含むことができ、主成分分析は、頭字語PCAによって省略されることが多い。PCAは、おそらく相関する変数の観測値のセットを、主成分と呼ばれる線形的に無相関な変数のセットに変換するために、直交変換を用いる数学的手順を指す。線形的に無相関な変数とは、互いに対する統計的線形関係(すなわち依存)を持たない変数を表す。これらの主成分は、互いに対する少しの統計的相関を有すると説明され得る。いずれにしても、いわゆる主成分の数は、元の変数の数以下である。一般に、変換は、第1の主成分が可能な最大の分散を有し(または、言い換えれば、データの変動性をできる限り多く説明し)、後続の各成分は、この連続した成分が先行する成分と直交する(これと無相関と言い換え得る)という制約下で可能な最高分散を有するというような方法で定義される。PCAは、SHCに関してSHCの圧縮になり得る、一種の次数減少を実行することができる。文脈に応じて、PCAは、いくつかの例を挙げれば、離散カルーネン−レーベ変換、ホテリング変換、固有直交分解(POD)、および固有値分解(EVD)などのいくつかの異なる名前によって呼ばれることがある。
[0176]いずれにしても、SVDは、SHCを変換された球面調和係数の2つ以上のセットに変換するためにSHCに適用されるプロセスを表す。ビットストリーム生成デバイス36は、いわゆるV行列と、S行列と、U行列とを生成するために、SHC27に対してSVDを実行することができる。SVDは、線形代数学では、m×nの実行列または複素行列X(ここで、Xは、SHC11Aなどのマルチチャンネルオーディオデータを表すことができる)の因数分解を以下の形態で表すことができる。
Figure 2016513811
[0177]Uはm×mの実ユニタリ行列または複素ユニタリ行列を表すことができ、ここで、Uのm列は、マルチチャンネルオーディオデータの左特異ベクトルとして一般に知られる。Sは、対角線上に非負実数を持つm×nの矩形対角行列を表すことができ、ここで、Sの対角線値は、マルチチャンネルオーディオデータの特異値として一般に知られる。V*(Vの共役転置行列を示すことができる)はn×nの実ユニタリ行列または複素ユニタリ行列を表すことができ、ここで、V*のn列は、マルチチャンネルオーディオデータの右特異ベクトルとして一般に知られる。
[0178]本開示では、球面調和係数27を備えるマルチチャンネルオーディオデータに適用されると説明されているが、技法は、任意の形態のマルチチャンネルオーディオデータに適用されてよい。このようにして、ビットストリーム生成デバイス36は、マルチチャンネルオーディオデータの左特異ベクトルを表すU行列と、マルチチャンネルオーディオデータの特異値を表すS行列と、マルチチャンネルオーディオデータの右特異ベクトルを表すV行列とを生成し、マルチチャンネルオーディオデータをU行列、S行列、およびV行列の1つまたは複数の少なくとも一部分の関数として表すために、音場の少なくとも一部分を表すマルチチャンネルオーディオデータに対して特異値分解を実行することができる。
[0179]通常、上記で参照されたSVD数式中のV*行列は、複素数を備える行列にSVDが適用され得ることを示すために、V行列の共役転置行列として示される。実数のみを備える行列に適用されるとき、V行列の共役転置行列(すなわち、言い換えれば、V*行列)は、V行列に等しいと見なされてよい。以下では、説明を簡単にするために、SHC11Aが実数を備え、その結果、V*行列ではなくV行列がSVDによって出力されると仮定される。V行列であると仮定されているが、技法は、類似のやり方で、複素係数を有するSHC11Aに適用されてよく、ここで、SVDの出力はV*行列である。したがって、技法は、この点について、V行列を生成するためにSVDの適用を提供することのみに限定されるべきではなく、V*行列を生成するために複素成分を有するSHC11AへのSVDの適用を含んでよい。
[0180]SVDの文脈では、ビットストリーム生成デバイス36は、SVD(または、より一般的に、ベクトルベースの変換)がSHC27に適用されたかかどうかまたは他の変換もしくは様々なコーディング方式が適用されたかどうか示す1つまたは複数のビットによって定義されたフラグとして、ビットストリーム内で変換情報を指定することができる。
[0181]したがって、三次元音場では、音源が生じるそれらの方向が最も重要であると見なされてよい。上記で説明されたように、主エネルギーが存在する方向を計算することによって音場を回転させるために方法が提供される。次いで、音場は、このエネルギーまたは最も重要な空間的ロケーションが、次いで、an0球面調和係数に含まれるように回転されるような方法で回転され得る。この理由は、不必要な(すなわち、所与の閾値を下回る)球面調和関数を除外するとき、N個の球面調和関数である、任意の所与の次数Nに対する最小量の必要とされる球面調和係数が存在する可能性があるように、単純である。これらの減少されたHOA係数すら格納するために必要とされる大きい帯域幅により、次いで、一種のデータ圧縮が必要とされることがある。すべての球面調和関数にわたって同じビットレートを使用する場合、係数のうちいくつかは、知覚的に透過的なコーディングを生じさせるために必要であるよりも多くのビットを潜在的に使用するが、他の球面調和係数は、係数を知覚的に透過的にするのに十分な大きさのビットレートを潜在的に使用しない。したがって、HOA係数にわたってインテリジェントにビットレートを割り振るための方法が必要とされ得る。
[0182]本開示で説明される技法は、球面調和関数のオーディオデータレート圧縮に対して、音場は、一例として、最大エネルギーが生じる方向がZ軸に位置決めされるように最初に回転されることを提供することができる。Yn0球面調和関数基底関数は、Z軸(上下の軸)を示す最大ローブと最小ローブとを有するので、この回転により、an0球面調和係数は、最大エネルギーを有することができる。球面調和基底関数の性質のために、エネルギー分布は、an0係数において高度に存在する可能性があるが、最小エネルギーは水平ベースの+/−nに基づく水平線に含まれ、m値−n<m<amの他の係数におけるエネルギーは、m=−nとm=0の間で増加し、次いでm=0とm=nの間で再び減少する。次いで、技法は、大きなビットレートをan0係数に、最小量を+/−n係数に割り振ることができる。この意味で、技法は、次数および/または副次数ごとに変化する動的なビットレート割振りを提供することができる。所与の次数のための中間係数は、中間ビットレートを有する可能性がある。その割合を計算するために、HOA信号に含まれる各HOA次数のためのp個の点を持ち得る窓関数が使用可能である(WIN)。その割合は、一例として、高ビットレートと低ビットレートの差のWIN係数を使用して、適用され得る。高ビットレートおよび低ビットレートは、HOA信号内に含まれる次数の次数ごとに定義され得る。結果として生じる3次元の窓は、Z軸において上を向いた一種のサーカスの「大テント」と、その鏡としての、Z軸において下を向いた別のテントとに似ており、これらのテントは、水平面で鏡像をなしている。
[0183]図10は、本開示において説明される技法の様々な態様を実行する際の、図3の例に示される抽出デバイス38などの抽出デバイスの例示的な動作を示す流れ図である。最初に、抽出デバイス38は、図7A〜図7Eの例に示されるようにビットストリーム31内で指定され得る変換情報52を決定することができる(120)。次いで、抽出デバイス38は、上記で説明されたように、変換されたSHC27を決定することができる(122)。次いで、抽出デバイス38は、SHC27’を生成するために、決定された変換情報52に基づいて、変換されたSHC27を変換することができる。いくつかの例では、抽出デバイス38は、この変換を変換情報52に基づいて効果的に実行するレンダラを選択することができる。すなわち、抽出デバイス38は、SHC27’を生成するために、以下の式に従って動作することができる。
Figure 2016513811
前述の式では、[EncMat][Renderer]は、両方の正面方向が調和し、それによって、ビットストリーム生成デバイスで実行された回転を元に戻すまたは相殺するように、レンダラを同じ量だけ変換するために使用可能である。
[0184]図11は、本開示で説明される技法の様々な態様を実行する際の、図3の例に示されるビットストリーム生成デバイス36などのビットストリーム生成デバイスおよび同様に図3の例に示される抽出デバイス38などの抽出デバイスの例示的な動作を示す流れ図である。最初に、ビットストリーム生成デバイス36は、上記で説明され図7A〜図7Eに関して示される様々な方法のいずれかで、ビットストリーム31に含まれるSHC27のサブセットを識別することができる(140)。次いで、ビットストリーム生成デバイス36は、SHC27の識別されたサブセットをビットストリーム31内で指定することができる(142)。次いで、抽出デバイス38は、ビットストリーム31を取得し、ビットストリーム31内で指定されたSHC27のサブセットを決定し、ビットストリームからのSHC27の決定されたサブセットを解析することができる。
[0185]いくつかの例では、ビットストリーム生成デバイス36および抽出デバイス38は、技法のこのサブセットSHC信号伝達態様とともに、技法の様々な他の態様を実行することができる。すなわち、ビットストリーム生成デバイス36は、ビットストリーム31内で指定されるべきSHC27の数を減少させるために、SHC27に対して変換を実行することができる。次いで、ビットストリーム生成デバイス36は、この変換をビットストリーム31内で実行した後残っているSHC27のサブセットを識別し、ビットストリーム31内で変換情報52も指定しながら、ビットストリーム31内でこれらの変換されたSHC27を指定することができる。次いで、抽出デバイス38は、ビットストリーム31を取得し、変換されたSHC27のサブセットを決定し、ビットストリームからの変換されたSHC27の決定されたサブセットを解析することができる。次いで、抽出デバイス38は、SHC27’を生成するために、変換されたSHC27を変換情報に基づいて変換することによって、SHC27(SHC27’として示される)を回復することができる。したがって、互いとは別個に示されているが、技法の様々な態様は、互いとともに実行されてよい。
[0186]例に応じて、本明細書で説明された方法のいずれかのある行為またはイベントは、異なる順序で実行可能であり、追加されてもよいし、マージされてもよいし、全体的に除外されてもよい(たとえば、すべての説明された行為またはイベントが方法の実施に必要とは限らない)ことを理解されたい。その上、ある例では、行為またはイベントは、たとえば、マルチスレッド処理、割込み処理、または複数のプロセッサによって、順次ではなく、同時に実行されることがある。さらに、本開示のある態様は、わかりやすいように、単一のデバイス、モジュール、またはユニットによって実行されると説明されているが、本開示の技法は、デバイス、ユニット、またはモジュールの組合せによって実行されてよいことを理解されたい。
[0187]1つまたは複数の例では、説明された機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実施されてよい。ソフトウェアで実施される場合、これらの機能は、コンピュータ可読媒体上に1つまたは複数の命令またはコードとして記憶または送信され、ハードウェアベースの処理ユニットによって実行されてもよい。コンピュータ可読媒体としては、データ記憶媒体などの有形媒体に相当するコンピュータ可読記憶媒体、またはたとえば通信プロトコルによる1つの場所から別の場所へのコンピュータプログラムの転送を容易にする任意の媒体を含む通信媒体があり得る。
[0188]このようにして、コンピュータ可読媒体は、一般に、(1)非一時的な有形のコンピュータ可読記憶媒体、または(2)信号または搬送波などの通信媒体に相当し得る。データ記憶媒体は、本開示で説明される技法の実装形態のための命令、コード、および/またはデータ構造を取り出すために1つもしくは複数のコンピュータまたは1つもしくは複数のプロセッサによってアクセス可能な任意の利用可能な媒体であってよい。コンピュータプログラム製品は、コンピュータ可読媒体を含むことができる。
[0189]限定ではなく、例とし、そのようなコンピュータ可読記憶媒体は、RAM、ROM、EEPROM(登録商標)、CD−ROMもしくは他の光ディスク記憶装置、磁気ディスク記憶装置、または他の磁気記憶デバイス、フラッシュメモリ、または命令もしくはデータ構造の形態をした所望のプログラムコードを記憶するために使用可能でコンピュータによってアクセス可能な任意の他の媒体を備えることができる。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。たとえば、命令が、同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者線(DSL)、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用してウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバケーブル、ツイストペア、DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。
[0190]しかしながら、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時的媒体を含まず、代わりに、非一時的な有形記憶媒体を対象とすることを理解されたい。本明細書で使用されるディスク(disk)およびディスク(disc)は、コンパクトディスク(compact disc)(CD)、レーザーディスク(登録商標)(laser disc)、光ディスク(optical disc)、デジタル多用途ディスク(digital versatile disc)(DVD)、フロッピー(登録商標)ディスク(floppy disk)、およびブルーレイ(登録商標)ディスク(blu-ray disc)を含み、ここでディスク(disk)は通常、磁気的にデータを再生するが、ディスク(disc)はレーザを用いて光学的にデータを再生する。上記の組合せも、コンピュータ可読媒体の範囲内に含められるべきである。
[0191]命令は、1つまたは複数のデジタル信号プロセッサ(DSP)、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルロジックアレイ(FPGA)、または他の等価な集積回路もしくはディスクリート論理回路などの1つまたは複数のプロセッサによって実行され得る。したがって、本明細書で使用される「プロセッサ」という用語は、前述の構造または本明細書で説明される技法の実装形態に適した任意の他の構造のうちいずれも指してもよい。さらに、いくつかの態様では、本明細書で説明される機能は、符号化および復号のために構成された専用のハードウェアおよび/またはソフトウェアモジュール内に設けられてもよいし、複合コーデックに組み込まれてもよい。また、技法は、1つまたは複数の回路または論理素子内で完全に実施されてよい。
[0192]本開示の技法は、ワイヤレスハンドセット、集積回路(IC)、またはICのセット(たとえば、チップセット)を含む多種多様なデバイスまたは装置において実施されてよい。様々な構成要素、モジュール、またはユニットが、開示された技法を実行するように構成されたデバイスの機能的態様を強調するために本開示で説明されているが、異なるハードウェアユニットによる実現を必ずしも必要としない。むしろ、上で説明されたように、様々なユニットが、好適なソフトウェアおよび/またはファームウェアとともに、上記の1つまたは複数のプロセッサを含めて、コーデックハードウェアユニットにおいて組み合わせられるか、または相互動作ハードウェアユニットの集合によって与えられ得る。
[0193]本技法の様々な実施形態が説明されてきた。これらおよび他の実施形態は、以下の特許請求の範囲内に入る。
[0193]本技法の様々な実施形態が説明されてきた。これらおよび他の実施形態は、以下の特許請求の範囲内に入る。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
[C1]
音場について説明する複数の階層的な要素からなるビットストリームを生成する方法であって、
前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場を変換することと、
前記音場がどのように変換されたかについて説明する変換情報を前記ビットストリーム内で指定することとを備える、方法。
[C2]
前記音場を変換することが、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場を回転させることを備え、
ここにおいて、前記変換情報を指定することが、前記音場がどのように回転されたかについて説明する回転情報を前記ビットストリーム内で指定することを備える、C1に記載の方法。
[C3]
前記音場を変換することが、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場を平行移動させることを備え、
ここにおいて、前記変換情報を指定することが、前記音場がどのように平行移動されたかについて説明する平行移動情報を前記ビットストリーム内で指定することを備える、C1に記載の方法。
[C4]
前記音場を変換することが、閾値を上回る非ゼロ値を有する前記複数の階層的な要素の数を減少させるために前記音場を変換することを備える、C1に記載の方法。
[C5]
前記音場を変換することが、閾値を上回る非ゼロ値を有する前記複数の階層的な要素の数を減少させるために前記音場を回転させることを備え、
ここにおいて、前記変換情報を指定することが、前記音場がどのように回転されたかについて説明する回転情報を前記ビットストリーム内で指定することを備える、C1に記載の方法。
[C6]
前記音場を変換することが、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場を回転させることを備え、
ここにおいて、前記変換情報を指定することが、回転情報としてオイラー角を前記ビットストリーム内で指定することを備える、ここにおいて、前記オイラー角が、前記音場がどのように回転されたかについて説明する、C1に記載の方法。
[C7]
前記音場を変換することが、
第1の方位角角度と第1の仰角角度に従って前記音場を回転させるために前記音場に対して第1の回転演算を実行することと、
前記音場について説明するのに関連する情報を提供する前記第1の方位角角度と前記第1の仰角角度に従って回転された前記音場を表す前記複数の階層的な要素の第1の数を決定することと、
第2の方位角角度および第2の仰角角度に従って前記音場を回転させるために前記音場に対して第2の回転演算を実行することと、
前記音場について説明するのに関連する情報を提供する前記第2の方位角角度および前記第2の仰角角度に従って回転された前記音場を表す前記複数の階層的な要素の第2の数を決定することと、
前記複数の階層的な要素の前記第1の数と前記複数の階層的な要素の前記第2の数の比較に基づいて前記第1の回転演算または前記第2の回転演算を選択することとを備える、C1に記載の方法。
[C8]
前記音場を変換することが、
第1の持続時間にわたって前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために、前記第1の持続時間にわたって前記音場を回転させることと、
前記ビットストリーム内で、前記第1の持続時間にわたって前記音場がどのように回転されたかについて説明する第1の回転情報を指定することと、
前記第1の回転情報に基づいて第2の持続時間の前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の前記数を減少させるために、前記第2の持続時間にわたって前記音場を回転させることと、
前記ビットストリーム内で、前記第2の持続時間にわたって前記音場がどのように回転されたかについて説明する第2の回転情報を指定することとを備える、C1に記載の方法。
[C9]
前記音場を変換することが、前記複数の階層的な要素の数を減少させるために前記複数の階層的な要素に対してベクトルベースの分解を実行することを備え、
ここにおいて、前記変換情報を指定することが、前記ベクトルベースの分解が前記複数の球面調和係数に対して実行されたことについて説明する情報を前記ビットストリーム内で指定することを備える、C1に記載の方法。
[C10]
前記ベクトルベースの分解を実行することが、特異値分解(SVD)、主成分分析(PCA)、およびカルーネン−レーベ変換(KLT)のうち1つまたは複数を実行することを備える、C9に記載の方法。
[C11]
前記音場を変換することが、前記複数の階層的な要素の前記数を減少させるように前記複数の階層的な要素を球面調和関数領域から別の領域に変換することを備え、
ここにおいて、前記変換情報を指定することが、前記複数の階層的な要素が前記他の領域に対する変換された形態前記球面調和関数領域であったことを示す情報を前記ビットストリーム内で指定することを備える、C1に記載の方法。
[C12]
変換された球面調和係数の少なくとも1つのサブセットにビットレートを、前記変換された球面調和係数の前記サブセットが対応する球面基底関数の次数および副次数のうち1つまたは複数に基づいて割り当てることをさらに備え、前記変換された球面調和係数が、音場を変換する変換演算に従って変換された、C1に記載の方法。
[C13]
前記ビットレートを割り当てることが、前記変換された球面調和係数の各々が対応する前記球面基底関数の前記次数および前記副次数のうち1つまたは複数に基づいて、前記変換された球面調和係数の異なるサブセットに異なるビットレートを窓関数に従って割り当てることを備える、C12に記載の方法。
[C14]
前記窓関数が、ハニング窓関数、ハミング窓関数、矩形窓関数、および三角形窓関数のうち1つまたは複数を備える、C13に記載の方法。
[C15]
第1のビットレートを使用する前記変換された球面調和係数の第1のサブセットと第2のビットレートを使用する前記変換された球面調和係数の第2のサブセットとを前記ビットストリーム内で指定することをさらに備える、C12に記載の方法。
[C16]
前記ビットレートを割り当てることが、前記変換された球面調和係数が対応する前記球面基底関数の前記副次数がゼロから遠ざかるにつれて徐々に減少するビットレートを動的に割り当てることを備える、C12に記載の方法。
[C17]
前記ビットレートを割り当てることが、前記変換された球面調和係数が対応する前記球面基底関数の前記次数が増加するにつれて徐々に減少するビットレートを動的に割り当てることを備える、C12に記載の方法。
[C18]
前記ビットレートを割り当てることが、前記変換された球面調和係数の前記サブセットが対応する前記球面基底関数の前記次数および前記副次数のうち1つまたは複数に基づいて、前記変換された球面調和係数の異なるサブセットに異なるビットレートを動的に割り当てることを備える、C12に記載の方法。
[C19]
音場について説明する複数の階層的な要素からなるビットストリームを生成するように構成されたデバイスであって、
前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場を変換し、前記音場がどのように変換されたかについて説明する変換情報を前記ビットストリーム内で指定するように構成された1つまたは複数のプロセッサを備える、デバイス。
[C20]
前記1つまたは複数のプロセッサが、前記音場を変換するとき、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場を回転させるようにさらに構成され、
ここにおいて、前記1つまたは複数のプロセッサが、前記変換情報を指定するとき、前記音場がどのように回転されたかについて説明する回転情報を前記ビットストリーム内で指定するようにさらに構成される、C19に記載のデバイス。
[C21]
前記1つまたは複数のプロセッサが、前記音場を変換するとき、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場を平行移動させるようにさらに構成され、
ここにおいて、前記1つまたは複数のプロセッサが、前記変換情報を指定するとき、前記音場がどのように平行移動されたかについて説明する平行移動情報を前記ビットストリーム内で指定するようにさらに構成される、C19に記載のデバイス。
[C22]
前記1つまたは複数のプロセッサが、前記音場を変換するとき、閾値を上回る非ゼロ値を有する前記複数の階層的な要素の数を減少させるために前記音場を変換するようにさらに構成される、C19に記載のデバイス。
[C23]
前記1つまたは複数のプロセッサが、前記音場を変換するとき、閾値を上回る非ゼロ値を有する前記複数の階層的な要素の数を減少させるために前記音場を回転させるようにさらに構成され、
ここにおいて、前記1つまたは複数のプロセッサが、前記変換情報を指定するとき、前記音場がどのように回転されたかについて説明する回転情報を前記ビットストリーム内で指定するようにさらに構成される、C19に記載のデバイス。
[C24]
前記1つまたは複数のプロセッサが、前記音場を変換するとき、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場を回転させるようにさらに構成され、
ここにおいて、前記1つまたは複数のプロセッサが、前記変換情報を指定するとき、回転情報としてオイラー角を前記ビットストリーム内で指定するようにさらに構成され、ここにおいて、前記オイラー角が、前記音場がどのように回転されたかについて説明する、C19に記載のデバイス。
[C25]
前記1つまたは複数のプロセッサが、前記音場を変換するとき、第1の方位角角度と第1の仰角角度に従って前記音場を回転させるために前記音場に対して第1の回転演算を実行し、前記音場について説明するのに関連する情報を提供する前記第1の方位角角度と前記第1の仰角角度に従って回転された前記音場を表す前記複数の階層的な要素の第1の数を決定し、第2の方位角角度および第2の仰角角度に従って前記音場を回転させるために前記音場に対して第2の回転演算を実行し、前記音場について説明するのに関連する情報を提供する前記第2の方位角角度および前記第2の仰角角度に従って回転された前記音場を表す前記複数の階層的な要素の第2の数を決定し、前記複数の階層的な要素の前記第1の数と前記複数の階層的な要素の前記第2の数の比較に基づいて前記第1の回転演算または前記第2の回転演算を選択するようにさらに構成される、C19に記載のデバイス。
[C26]
前記1つまたは複数のプロセッサが、前記音場を変換するとき、第1の持続時間にわたって前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために、前記第1の持続時間にわたって前記音場を回転させ、前記ビットストリーム内で、前記第1の持続時間にわたって前記音場がどのように回転されたかについて説明する第1の回転情報を指定し、前記第1の回転情報に基づいて第2の持続時間の前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の前記数を減少させるために、前記第2の持続時間にわたって前記音場を回転させ、前記ビットストリーム内で、前記第2の持続時間にわたって前記音場がどのように回転されたかについて説明する第2の回転情報を指定するようにさらに構成される、C19に記載のデバイス。
[C27]
前記1つまたは複数のプロセッサが、前記音場を変換するとき、前記複数の階層的な要素の数を減少させるために前記複数の階層的な要素に対してベクトルベースの分解を実行するように構成され、
ここにおいて、前記1つまたは複数のプロセッサが、前記変換情報を指定するとき、前記ベクトルベースの分解が前記複数の球面調和係数に対して実行されたことについて説明する情報を前記ビットストリーム内で指定するように構成される、C19に記載のデバイス。
[C28]
前記1つまたは複数のプロセッサが、前記ベクトルベースの分解を実行するとき、特異値分解(SVD)、主成分分析(PCA)、およびカルーネン−レーベ変換(KLT)のうち1つまたは複数を実行するように構成される、C27に記載のデバイス。
[C29]
前記1つまたは複数のプロセッサが、前記音場を変換するとき、前記複数の階層的な要素の前記数を減少させるように前記複数の階層的な要素を球面調和関数領域から別の領域に変換するように構成され、
ここにおいて、前記1つまたは複数のプロセッサが、前記変換情報を指定するとき、前記複数の階層的な要素が前記他の領域に対する変換された形態前記球面調和関数領域であったことを示す情報を前記ビットストリーム内で指定するように構成される、C27に記載のデバイス。
[C30]
前記1つまたは複数のプロセッサが、変換された球面調和係数の少なくとも1つのサブセットにビットレートを、前記変換された球面調和係数の前記サブセットが対応する球面基底関数の次数および副次数のうち1つまたは複数に基づいて割り当てるようにさらに構成され、前記変換された球面調和係数が、音場を変換する変換演算に従って変換された、C19に記載のデバイス。
[C31]
前記1つまたは複数のプロセッサが、前記ビットレートを割り当てるとき、前記変換された球面調和係数の各々が対応する前記球面基底関数の前記次数および前記副次数のうち1つまたは複数に基づいて、前記変換された球面調和係数の異なるサブセットに異なるビットレートを窓関数に従って割り当てるように構成される、C30に記載のデバイス。
[C32]
前記窓関数が、ハニング窓関数、ハミング窓関数、矩形窓関数、および三角形窓関数のうち1つまたは複数を備える、C31に記載のデバイス。
[C33]
前記1つまたは複数のプロセッサが、第1のビットレートを使用する前記変換された球面調和係数の第1のサブセットと第2のビットレートを使用する前記変換された球面調和係数の第2のサブセットとを前記ビットストリーム内で指定するようにさらに構成される、C30に記載のデバイス。
[C34]
前記1つまたは複数のプロセッサが、前記ビットレートを割り当てるとき、前記変換された球面調和係数が対応する前記球面基底関数の前記副次数がゼロから遠ざかるにつれて徐々に減少するビットレートを動的に割り当てるように構成される、C30に記載のデバイス。
[C35]
前記1つまたは複数のプロセッサが、前記ビットレートを割り当てるとき、前記変換された球面調和係数が対応する前記球面基底関数の前記次数が増加するにつれて徐々に減少するビットレートを動的に割り当てるように構成される、C30に記載のデバイス。
[C36]
前記1つまたは複数のプロセッサが、前記ビットレートを割り当てるとき、前記変換された球面調和係数の前記サブセットが対応する前記球面基底関数の前記次数および前記副次数のうち1つまたは複数に基づいて、前記変換された球面調和係数の異なるサブセットに異なるビットレートを動的に割り当てるように構成される、C30に記載のデバイス。
[C37]
音場について説明する複数の階層的な要素からなるビットストリームを生成するように構成されたデバイスであって、
前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場を変換するための手段と、
前記音場がどのように変換されたかについて説明する変換情報を前記ビットストリーム内で指定するための手段とを備える、デバイス。
[C38]
実行されると、1つまたは複数のプロセッサに、
前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場を変換させ、
音場がどのように変換されたかについて説明する変換情報をビットストリーム内で指定させる命令をその上に記憶させた非一時的なコンピュータ可読記憶媒体。
[C39]
音場について説明する複数の階層的な要素からなるビットストリームを処理する方法であって、
前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場がどのように変換されたかについて説明する変換情報を決定するために前記ビットストリームを解析することと、
前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素に基づいて前記音場を再現するとき、前記複数の階層的な要素の前記数を減少させるように実行された前記変換を逆にするために前記変換情報に基づいて前記音場を変換することとを備える、方法。
[C40]
前記変換情報を決定するために前記ビットストリームを解析することが、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場がどのように回転されたかについて説明する回転情報を決定するために前記ビットストリームを解析することを備え、
前記音場を変換することが、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素に基づいて前記音場を再現するとき、前記複数の階層的な要素の前記数を減少させるように実行された回転を逆にするために前記回転情報に基づいて前記音場を回転させることを備える、C39に記載の方法。
[C41]
前記変換情報を決定するために前記ビットストリームを解析することが、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場がどのように平行移動されたかについて説明する平行移動情報を決定するために前記ビットストリームを解析することを備え、
ここにおいて、前記音場を変換することが、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素に基づいて前記音場を再現するとき、前記複数の階層的な要素の前記数を減少させるように実行された平行移動を逆にするために前記平行移動情報に基づいて前記音場を平行移動させることを備える、C39に記載の方法。
[C42]
前記変換情報を決定するために前記ビットストリームを解析することが、閾値を上回る非ゼロ値を有する前記複数の階層的な要素の数を減少させるために前記音場がどのように変換されたかについて説明する変換情報を決定するために前記ビットストリームを解析することを備え、
前記音場を変換することが、前記閾値を上回る非ゼロ値を有する前記複数の階層的な要素に基づいて前記音場を再現するとき、前記複数の階層的な要素の前記数を減少させるように実行された前記変換を逆にするために前記変換情報に基づいて前記音場を変換することを備える、C39に記載の方法。
[C43]
前記変換情報を決定するために前記ビットストリームを解析することが、閾値を上回る非ゼロ値を有する前記複数の階層的な要素の数を減少させるために前記音場がどのように回転されたかについて説明する回転情報を決定するために前記ビットストリームを解析することを備え、
ここにおいて、前記音場を変換することが、前記閾値を上回る非ゼロ値を有する前記複数の階層的な要素に基づいて前記音場を再現するとき、前記複数の階層的な要素の前記数を減少させるように実行された前記回転を逆にするために前記回転情報に基づいて前記音場を回転させることを備える、C39に記載の方法。
[C44]
変換情報を決定するために前記ビットストリームを解析することが、オイラー角を含む回転情報を決定するために前記ビットストリームを解析することを備え、ここにおいて、前記オイラー角が、前記音場がどのように回転されたかについて説明する、
ここにおいて、前記音場を変換することが、前記閾値を上回る非ゼロ値を有する前記複数の階層的な要素に基づいて前記音場を再現するとき、前記オイラー角に基づいて前記音場を回転させることを備える、C39に記載の方法。
[C45]
前記変換情報を決定するために前記ビットストリームを解析することが、前記複数の階層的な要素の数を減少させるために前記複数の階層的な要素がどのようにベクトルベースの分解を使用して分解されたかについて説明する平行移動情報を決定するために前記ビットストリームを解析することを備え、
ここにおいて、前記音場を変換することが、前記複数の階層的な要素に基づいて前記音場を再現するとき、前記ベクトルベース分解された複数の階層的な要素に基づいて前記複数の階層的な要素を再構築することを備える、C39に記載の方法。
[C46]
前記ベクトルベースの分解が、特異値分解(SVD)、主成分分析(PCA)、およびカルーネン−レーベ変換(KLT)のうち1つまたは複数を備える、C45に記載の方法。
[C47]
前記変換情報を決定するために前記ビットストリームを解析することが、前記複数の階層的な要素の数を減少させるために前記複数の階層的な要素が前記球面調和関数領域から前記他の領域にどのように変換されたかについて説明する平行移動情報を決定するために前記ビットストリームを解析することを備え、
ここにおいて、前記音場を変換することが、前記複数の階層的な要素に基づいて前記音場を再現するとき、前記変換された複数の階層的な要素に基づいて前記複数の階層的な要素を再構築することを備える、C39に記載の方法。
[C48]
音場について説明する複数の階層的な要素からなるビットストリームを処理するように構成されたデバイスであって、
前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場がどのように変換されたかについて説明する変換情報を決定するために前記ビットストリームを解析し、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素に基づいて前記音場を再現するとき、前記複数の階層的な要素の前記数を減少させるように実行された前記変換を逆にするために前記変換情報に基づいて前記音場を変換するように構成された1つまたは複数のプロセッサを備える、デバイス。
[C49]
前記1つまたは複数のプロセッサが、前記変換情報を決定するために前記ビットストリームを解析するとき、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場がどのように回転されたかについて説明する回転情報を決定するために前記ビットストリームを解析するようにさらに構成され、
前記1つまたは複数のプロセッサが、前記音場を変換するとき、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素に基づいて前記音場を再現するとき、前記複数の階層的な要素の前記数を減少させるように実行された回転を逆にするために前記回転情報に基づいて前記音場を回転させるようにさらに構成される、C48に記載のデバイス。
[C50]
前記1つまたは複数のプロセッサが、前記変換情報を決定するために前記ビットストリームを解析するとき、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場がどのように平行移動されたかについて説明する平行移動情報を決定するために前記ビットストリームを解析するようにさらに構成され、
前記1つまたは複数のプロセッサが、前記音場を変換するとき、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素に基づいて前記音場を再現するとき、前記複数の階層的な要素の前記数を減少させるように実行された平行移動を逆にするために前記平行移動情報に基づいて前記音場を平行移動させるようにさらに構成される、C48に記載のデバイス。
[C51]
前記1つまたは複数のプロセッサが、前記変換情報を決定するために前記ビットストリームを解析するとき、閾値を上回る非ゼロ値を有する前記複数の階層的な要素の数を減少させるために前記音場がどのように変換されたかについて説明する変換情報を決定するために前記ビットストリームを解析するようにさらに構成され、
前記1つまたは複数のプロセッサが、前記音場を変換するとき、前記閾値を上回る非ゼロ値を有する前記複数の階層的な要素に基づいて前記音場を再現するとき、前記複数の階層的な要素の前記数を減少させるように実行された前記変換を逆にするために前記変換情報に基づいて前記音場を変換するようにさらに構成される、C48に記載の方法。
[C52]
前記1つまたは複数のプロセッサが、前記変換情報を決定するために前記ビットストリームを解析するとき、閾値を上回る非ゼロ値を有する前記複数の階層的な要素の数を減少させるために前記音場がどのように回転されたかについて説明する回転情報を決定するために前記ビットストリームを解析するようにさらに構成され、
前記1つまたは複数のプロセッサが、前記音場を変換するとき、前記閾値を上回る非ゼロ値を有する前記複数の階層的な要素に基づいて前記音場を再現するとき、前記複数の階層的な要素の前記数を減少させるように実行された前記回転を逆にするために前記回転情報に基づいて前記音場を回転させるようにさらに構成される、C48に記載のデバイス。
[C53]
前記1つまたは複数のプロセッサが、変換情報を決定するために前記ビットストリームを解析するとき、オイラー角を含む回転情報を決定するために前記ビットストリームを解析するようにさらに構成され、ここにおいて、前記オイラー角が、前記音場がどのように回転されたかについて説明する、
ここにおいて、前記1つまたは複数のプロセッサが、前記音場を変換するとき、前記閾値を上回る非ゼロ値を有する前記複数の階層的な要素に基づいて前記音場を再現するとき、前記オイラー角に基づいて前記音場を回転させるようにさらに構成される、C48に記載のデバイス。
[C54]
前記1つまたは複数のプロセッサが、前記変換情報を決定するために前記ビットストリームを解析するとき、前記複数の階層的な要素の数を減少させるために前記複数の階層的な要素がどのようにベクトルベースの分解を使用して分解されたかについて説明する平行移動情報を決定するために前記ビットストリームを解析するようにさらに構成され、
ここにおいて、前記1つまたは複数のプロセッサが、前記複数の階層的な要素に基づいて前記音場を再現するとき、前記ベクトルベース分解された複数の階層的な要素に基づいて前記複数の階層的な要素を再構築するように構成されることを備える、C48に記載のデバイス。
[C55]
前記ベクトルベースの分解が、特異値分解(SVD)、主成分分析(PCA)、およびカルーネン−レーベ変換(KLT)のうち1つまたは複数を備える、C54に記載のデバイス。
[C56]
前記1つまたは複数のプロセッサが、前記変換情報を決定するために前記ビットストリームを解析するとき、前記複数の階層的な要素の数を減少させるために前記複数の階層的な要素が前記球面調和関数領域から前記他の領域にどのように変換されたかについて説明する平行移動情報を決定するために前記ビットストリームを解析することを備え、
ここにおいて、前記1つまたは複数のプロセッサが、前記音場を変換するとき、前記複数の階層的な要素に基づいて前記音場を再現するとき、前記変換された複数の階層的な要素に基づいて前記複数の階層的な要素を再構築することを備えるように構成される、C54に記載のデバイス。
[C57]
音場について説明する複数の階層的な要素からなるビットストリームを処理するように構成されたデバイスであって、
前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場がどのように変換されたかについて説明する変換情報を決定するために前記ビットストリームを解析するための手段と、
前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素に基づいて前記音場を再現するとき、前記複数の階層的な要素の前記数を減少させるように実行された前記変換を逆にするために前記変換情報に基づいて前記音場を変換するための手段とを備える、方法。
[C58]
実行されると、1つまたは複数のプロセッサに、
前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場がどのように変換されたかについて説明する変換情報を決定するために前記ビットストリームを解析させ、
前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素に基づいて前記音場を再現するとき、前記変換情報に基づいて前記音場を変換させる命令をその上に記憶させた非一時的なコンピュータ可読記憶媒体。
[C59]
音場について説明する複数の階層的な要素からなるビットストリームを生成する方法であって、
前記複数の階層的な要素の数を減少させるために、音場を表す前記複数の階層的な要素を球面調和関数領域から別の領域に変換することと、
前記音場がどのように変換されたかについて説明する変換情報を前記ビットストリーム内で指定することとを備える、方法。
[C60]
前記複数の階層的な要素を変換することは、前記複数の階層的な要素に対してベクトルベースの変換を実行することを備える、C59の方法。
[C61]
前記ベクトルベースの変換を実行することが、特異値分解(SVD)、主成分分析(PCA)、およびカルーネン−レーベ変換(KLT)のうち1つまたは複数を前記複数の階層的な要素に対して実行することを備える、C60に記載の方法。

Claims (61)

  1. 音場について説明する複数の階層的な要素からなるビットストリームを生成する方法であって、
    前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場を変換することと、
    前記音場がどのように変換されたかについて説明する変換情報を前記ビットストリーム内で指定することと
    を備える、方法。
  2. 前記音場を変換することが、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場を回転させることを備え、
    ここにおいて、前記変換情報を指定することが、前記音場がどのように回転されたかについて説明する回転情報を前記ビットストリーム内で指定することを備える、請求項1に記載の方法。
  3. 前記音場を変換することが、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場を平行移動させることを備え、
    ここにおいて、前記変換情報を指定することが、前記音場がどのように平行移動されたかについて説明する平行移動情報を前記ビットストリーム内で指定することを備える、請求項1に記載の方法。
  4. 前記音場を変換することが、閾値を上回る非ゼロ値を有する前記複数の階層的な要素の数を減少させるために前記音場を変換することを備える、請求項1に記載の方法。
  5. 前記音場を変換することが、閾値を上回る非ゼロ値を有する前記複数の階層的な要素の数を減少させるために前記音場を回転させることを備え、
    ここにおいて、前記変換情報を指定することが、前記音場がどのように回転されたかについて説明する回転情報を前記ビットストリーム内で指定することを備える、請求項1に記載の方法。
  6. 前記音場を変換することが、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場を回転させることを備え、
    ここにおいて、前記変換情報を指定することが、回転情報としてオイラー角を前記ビットストリーム内で指定することを備える、ここにおいて、前記オイラー角が、前記音場がどのように回転されたかについて説明する、請求項1に記載の方法。
  7. 前記音場を変換することが、
    第1の方位角角度と第1の仰角角度に従って前記音場を回転させるために前記音場に対して第1の回転演算を実行することと、
    前記音場について説明するのに関連する情報を提供する前記第1の方位角角度と前記第1の仰角角度に従って回転された前記音場を表す前記複数の階層的な要素の第1の数を決定することと、
    第2の方位角角度および第2の仰角角度に従って前記音場を回転させるために前記音場に対して第2の回転演算を実行することと、
    前記音場について説明するのに関連する情報を提供する前記第2の方位角角度および前記第2の仰角角度に従って回転された前記音場を表す前記複数の階層的な要素の第2の数を決定することと、
    前記複数の階層的な要素の前記第1の数と前記複数の階層的な要素の前記第2の数の比較に基づいて前記第1の回転演算または前記第2の回転演算を選択することとを備える、請求項1に記載の方法。
  8. 前記音場を変換することが、
    第1の持続時間にわたって前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために、前記第1の持続時間にわたって前記音場を回転させることと、
    前記ビットストリーム内で、前記第1の持続時間にわたって前記音場がどのように回転されたかについて説明する第1の回転情報を指定することと、
    前記第1の回転情報に基づいて第2の持続時間の前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の前記数を減少させるために、前記第2の持続時間にわたって前記音場を回転させることと、
    前記ビットストリーム内で、前記第2の持続時間にわたって前記音場がどのように回転されたかについて説明する第2の回転情報を指定することと
    を備える、請求項1に記載の方法。
  9. 前記音場を変換することが、前記複数の階層的な要素の数を減少させるために前記複数の階層的な要素に対してベクトルベースの分解を実行することを備え、
    ここにおいて、前記変換情報を指定することが、前記ベクトルベースの分解が前記複数の球面調和係数に対して実行されたことについて説明する情報を前記ビットストリーム内で指定することを備える、請求項1に記載の方法。
  10. 前記ベクトルベースの分解を実行することが、特異値分解(SVD)、主成分分析(PCA)、およびカルーネン−レーベ変換(KLT)のうち1つまたは複数を実行することを備える、請求項9に記載の方法。
  11. 前記音場を変換することが、前記複数の階層的な要素の前記数を減少させるように前記複数の階層的な要素を球面調和関数領域から別の領域に変換することを備え、
    ここにおいて、前記変換情報を指定することが、前記複数の階層的な要素が前記他の領域に対する変換された形態前記球面調和関数領域であったことを示す情報を前記ビットストリーム内で指定することを備える、請求項1に記載の方法。
  12. 変換された球面調和係数の少なくとも1つのサブセットにビットレートを、前記変換された球面調和係数の前記サブセットが対応する球面基底関数の次数および副次数のうち1つまたは複数に基づいて割り当てることをさらに備え、前記変換された球面調和係数が、音場を変換する変換演算に従って変換された、請求項1に記載の方法。
  13. 前記ビットレートを割り当てることが、前記変換された球面調和係数の各々が対応する前記球面基底関数の前記次数および前記副次数のうち1つまたは複数に基づいて、前記変換された球面調和係数の異なるサブセットに異なるビットレートを窓関数に従って割り当てることを備える、請求項12に記載の方法。
  14. 前記窓関数が、ハニング窓関数、ハミング窓関数、矩形窓関数、および三角形窓関数のうち1つまたは複数を備える、請求項13に記載の方法。
  15. 第1のビットレートを使用する前記変換された球面調和係数の第1のサブセットと第2のビットレートを使用する前記変換された球面調和係数の第2のサブセットとを前記ビットストリーム内で指定することをさらに備える、請求項12に記載の方法。
  16. 前記ビットレートを割り当てることが、前記変換された球面調和係数が対応する前記球面基底関数の前記副次数がゼロから遠ざかるにつれて徐々に減少するビットレートを動的に割り当てることを備える、請求項12に記載の方法。
  17. 前記ビットレートを割り当てることが、前記変換された球面調和係数が対応する前記球面基底関数の前記次数が増加するにつれて徐々に減少するビットレートを動的に割り当てることを備える、請求項12に記載の方法。
  18. 前記ビットレートを割り当てることが、前記変換された球面調和係数の前記サブセットが対応する前記球面基底関数の前記次数および前記副次数のうち1つまたは複数に基づいて、前記変換された球面調和係数の異なるサブセットに異なるビットレートを動的に割り当てることを備える、請求項12に記載の方法。
  19. 音場について説明する複数の階層的な要素からなるビットストリームを生成するように構成されたデバイスであって、
    前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場を変換し、前記音場がどのように変換されたかについて説明する変換情報を前記ビットストリーム内で指定するように構成された1つまたは複数のプロセッサ
    を備える、デバイス。
  20. 前記1つまたは複数のプロセッサが、前記音場を変換するとき、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場を回転させるようにさらに構成され、
    ここにおいて、前記1つまたは複数のプロセッサが、前記変換情報を指定するとき、前記音場がどのように回転されたかについて説明する回転情報を前記ビットストリーム内で指定するようにさらに構成される、請求項19に記載のデバイス。
  21. 前記1つまたは複数のプロセッサが、前記音場を変換するとき、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場を平行移動させるようにさらに構成され、
    ここにおいて、前記1つまたは複数のプロセッサが、前記変換情報を指定するとき、前記音場がどのように平行移動されたかについて説明する平行移動情報を前記ビットストリーム内で指定するようにさらに構成される、請求項19に記載のデバイス。
  22. 前記1つまたは複数のプロセッサが、前記音場を変換するとき、閾値を上回る非ゼロ値を有する前記複数の階層的な要素の数を減少させるために前記音場を変換するようにさらに構成される、請求項19に記載のデバイス。
  23. 前記1つまたは複数のプロセッサが、前記音場を変換するとき、閾値を上回る非ゼロ値を有する前記複数の階層的な要素の数を減少させるために前記音場を回転させるようにさらに構成され、
    ここにおいて、前記1つまたは複数のプロセッサが、前記変換情報を指定するとき、前記音場がどのように回転されたかについて説明する回転情報を前記ビットストリーム内で指定するようにさらに構成される、請求項19に記載のデバイス。
  24. 前記1つまたは複数のプロセッサが、前記音場を変換するとき、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場を回転させるようにさらに構成され、
    ここにおいて、前記1つまたは複数のプロセッサが、前記変換情報を指定するとき、回転情報としてオイラー角を前記ビットストリーム内で指定するようにさらに構成され、ここにおいて、前記オイラー角が、前記音場がどのように回転されたかについて説明する、請求項19に記載のデバイス。
  25. 前記1つまたは複数のプロセッサが、前記音場を変換するとき、第1の方位角角度と第1の仰角角度に従って前記音場を回転させるために前記音場に対して第1の回転演算を実行し、前記音場について説明するのに関連する情報を提供する前記第1の方位角角度と前記第1の仰角角度に従って回転された前記音場を表す前記複数の階層的な要素の第1の数を決定し、
    第2の方位角角度および第2の仰角角度に従って前記音場を回転させるために前記音場に対して第2の回転演算を実行し、前記音場について説明するのに関連する情報を提供する前記第2の方位角角度および前記第2の仰角角度に従って回転された前記音場を表す前記複数の階層的な要素の第2の数を決定し、前記複数の階層的な要素の前記第1の数と前記複数の階層的な要素の前記第2の数の比較に基づいて前記第1の回転演算または前記第2の回転演算を選択するようにさらに構成される、請求項19に記載のデバイス。
  26. 前記1つまたは複数のプロセッサが、前記音場を変換するとき、第1の持続時間にわたって前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために、前記第1の持続時間にわたって前記音場を回転させ、前記ビットストリーム内で、前記第1の持続時間にわたって前記音場がどのように回転されたかについて説明する第1の回転情報を指定し、前記第1の回転情報に基づいて第2の持続時間の前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の前記数を減少させるために、前記第2の持続時間にわたって前記音場を回転させ、前記ビットストリーム内で、前記第2の持続時間にわたって前記音場がどのように回転されたかについて説明する第2の回転情報を指定するようにさらに構成される、請求項19に記載のデバイス。
  27. 前記1つまたは複数のプロセッサが、前記音場を変換するとき、前記複数の階層的な要素の数を減少させるために前記複数の階層的な要素に対してベクトルベースの分解を実行するように構成され、
    ここにおいて、前記1つまたは複数のプロセッサが、前記変換情報を指定するとき、前記ベクトルベースの分解が前記複数の球面調和係数に対して実行されたことについて説明する情報を前記ビットストリーム内で指定するように構成される、請求項19に記載のデバイス。
  28. 前記1つまたは複数のプロセッサが、前記ベクトルベースの分解を実行するとき、特異値分解(SVD)、主成分分析(PCA)、およびカルーネン−レーベ変換(KLT)のうち1つまたは複数を実行するように構成される、請求項27に記載のデバイス。
  29. 前記1つまたは複数のプロセッサが、前記音場を変換するとき、前記複数の階層的な要素の前記数を減少させるように前記複数の階層的な要素を球面調和関数領域から別の領域に変換するように構成され、
    ここにおいて、前記1つまたは複数のプロセッサが、前記変換情報を指定するとき、前記複数の階層的な要素が前記他の領域に対する変換された形態前記球面調和関数領域であったことを示す情報を前記ビットストリーム内で指定するように構成される、請求項27に記載のデバイス。
  30. 前記1つまたは複数のプロセッサが、変換された球面調和係数の少なくとも1つのサブセットにビットレートを、前記変換された球面調和係数の前記サブセットが対応する球面基底関数の次数および副次数のうち1つまたは複数に基づいて割り当てるようにさらに構成され、前記変換された球面調和係数が、音場を変換する変換演算に従って変換された、請求項19に記載のデバイス。
  31. 前記1つまたは複数のプロセッサが、前記ビットレートを割り当てるとき、前記変換された球面調和係数の各々が対応する前記球面基底関数の前記次数および前記副次数のうち1つまたは複数に基づいて、前記変換された球面調和係数の異なるサブセットに異なるビットレートを窓関数に従って割り当てるように構成される、請求項30に記載のデバイス。
  32. 前記窓関数が、ハニング窓関数、ハミング窓関数、矩形窓関数、および三角形窓関数のうち1つまたは複数を備える、請求項31に記載のデバイス。
  33. 前記1つまたは複数のプロセッサが、第1のビットレートを使用する前記変換された球面調和係数の第1のサブセットと第2のビットレートを使用する前記変換された球面調和係数の第2のサブセットとを前記ビットストリーム内で指定するようにさらに構成される、請求項30に記載のデバイス。
  34. 前記1つまたは複数のプロセッサが、前記ビットレートを割り当てるとき、前記変換された球面調和係数が対応する前記球面基底関数の前記副次数がゼロから遠ざかるにつれて徐々に減少するビットレートを動的に割り当てるように構成される、請求項30に記載のデバイス。
  35. 前記1つまたは複数のプロセッサが、前記ビットレートを割り当てるとき、前記変換された球面調和係数が対応する前記球面基底関数の前記次数が増加するにつれて徐々に減少するビットレートを動的に割り当てるように構成される、請求項30に記載のデバイス。
  36. 前記1つまたは複数のプロセッサが、前記ビットレートを割り当てるとき、前記変換された球面調和係数の前記サブセットが対応する前記球面基底関数の前記次数および前記副次数のうち1つまたは複数に基づいて、前記変換された球面調和係数の異なるサブセットに異なるビットレートを動的に割り当てるように構成される、請求項30に記載のデバイス。
  37. 音場について説明する複数の階層的な要素からなるビットストリームを生成するように構成されたデバイスであって、
    前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場を変換するための手段と、
    前記音場がどのように変換されたかについて説明する変換情報を前記ビットストリーム内で指定するための手段と
    を備える、デバイス。
  38. 実行されると、1つまたは複数のプロセッサに、
    前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場を変換させ、
    音場がどのように変換されたかについて説明する変換情報をビットストリーム内で指定させる命令をその上に記憶させた非一時的なコンピュータ可読記憶媒体。
  39. 音場について説明する複数の階層的な要素からなるビットストリームを処理する方法であって、
    前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場がどのように変換されたかについて説明する変換情報を決定するために前記ビットストリームを解析することと、
    前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素に基づいて前記音場を再現するとき、前記複数の階層的な要素の前記数を減少させるように実行された前記変換を逆にするために前記変換情報に基づいて前記音場を変換することと
    を備える、方法。
  40. 前記変換情報を決定するために前記ビットストリームを解析することが、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場がどのように回転されたかについて説明する回転情報を決定するために前記ビットストリームを解析することを備え、
    前記音場を変換することが、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素に基づいて前記音場を再現するとき、前記複数の階層的な要素の前記数を減少させるように実行された回転を逆にするために前記回転情報に基づいて前記音場を回転させることを備える、請求項39に記載の方法。
  41. 前記変換情報を決定するために前記ビットストリームを解析することが、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場がどのように平行移動されたかについて説明する平行移動情報を決定するために前記ビットストリームを解析することを備え、
    ここにおいて、前記音場を変換することが、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素に基づいて前記音場を再現するとき、前記複数の階層的な要素の前記数を減少させるように実行された平行移動を逆にするために前記平行移動情報に基づいて前記音場を平行移動させることを備える、請求項39に記載の方法。
  42. 前記変換情報を決定するために前記ビットストリームを解析することが、閾値を上回る非ゼロ値を有する前記複数の階層的な要素の数を減少させるために前記音場がどのように変換されたかについて説明する変換情報を決定するために前記ビットストリームを解析することを備え、
    前記音場を変換することが、前記閾値を上回る非ゼロ値を有する前記複数の階層的な要素に基づいて前記音場を再現するとき、前記複数の階層的な要素の前記数を減少させるように実行された前記変換を逆にするために前記変換情報に基づいて前記音場を変換することを備える、請求項39に記載の方法。
  43. 前記変換情報を決定するために前記ビットストリームを解析することが、閾値を上回る非ゼロ値を有する前記複数の階層的な要素の数を減少させるために前記音場がどのように回転されたかについて説明する回転情報を決定するために前記ビットストリームを解析することを備え、
    ここにおいて、前記音場を変換することが、前記閾値を上回る非ゼロ値を有する前記複数の階層的な要素に基づいて前記音場を再現するとき、前記複数の階層的な要素の前記数を減少させるように実行された前記回転を逆にするために前記回転情報に基づいて前記音場を回転させることを備える、請求項39に記載の方法。
  44. 変換情報を決定するために前記ビットストリームを解析することが、オイラー角を含む回転情報を決定するために前記ビットストリームを解析することを備え、ここにおいて、前記オイラー角が、前記音場がどのように回転されたかについて説明する、
    ここにおいて、前記音場を変換することが、前記閾値を上回る非ゼロ値を有する前記複数の階層的な要素に基づいて前記音場を再現するとき、前記オイラー角に基づいて前記音場を回転させることを備える、請求項39に記載の方法。
  45. 前記変換情報を決定するために前記ビットストリームを解析することが、前記複数の階層的な要素の数を減少させるために前記複数の階層的な要素がどのようにベクトルベースの分解を使用して分解されたかについて説明する平行移動情報を決定するために前記ビットストリームを解析することを備え、
    ここにおいて、前記音場を変換することが、前記複数の階層的な要素に基づいて前記音場を再現するとき、前記ベクトルベース分解された複数の階層的な要素に基づいて前記複数の階層的な要素を再構築することを備える、請求項39に記載の方法。
  46. 前記ベクトルベースの分解が、特異値分解(SVD)、主成分分析(PCA)、およびカルーネン−レーベ変換(KLT)のうち1つまたは複数を備える、請求項45に記載の方法。
  47. 前記変換情報を決定するために前記ビットストリームを解析することが、前記複数の階層的な要素の数を減少させるために前記複数の階層的な要素が前記球面調和関数領域から前記他の領域にどのように変換されたかについて説明する平行移動情報を決定するために前記ビットストリームを解析することを備え、
    ここにおいて、前記音場を変換することが、前記複数の階層的な要素に基づいて前記音場を再現するとき、前記変換された複数の階層的な要素に基づいて前記複数の階層的な要素を再構築することを備える、請求項39に記載の方法。
  48. 音場について説明する複数の階層的な要素からなるビットストリームを処理するように構成されたデバイスであって、
    前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場がどのように変換されたかについて説明する変換情報を決定するために前記ビットストリームを解析し、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素に基づいて前記音場を再現するとき、前記複数の階層的な要素の前記数を減少させるように実行された前記変換を逆にするために前記変換情報に基づいて前記音場を変換するように構成された1つまたは複数のプロセッサ
    を備える、デバイス。
  49. 前記1つまたは複数のプロセッサが、前記変換情報を決定するために前記ビットストリームを解析するとき、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場がどのように回転されたかについて説明する回転情報を決定するために前記ビットストリームを解析するようにさらに構成され、
    前記1つまたは複数のプロセッサが、前記音場を変換するとき、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素に基づいて前記音場を再現するとき、前記複数の階層的な要素の前記数を減少させるように実行された回転を逆にするために前記回転情報に基づいて前記音場を回転させるようにさらに構成される、請求項48に記載のデバイス。
  50. 前記1つまたは複数のプロセッサが、前記変換情報を決定するために前記ビットストリームを解析するとき、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場がどのように平行移動されたかについて説明する平行移動情報を決定するために前記ビットストリームを解析するようにさらに構成され、
    前記1つまたは複数のプロセッサが、前記音場を変換するとき、前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素に基づいて前記音場を再現するとき、前記複数の階層的な要素の前記数を減少させるように実行された平行移動を逆にするために前記平行移動情報に基づいて前記音場を平行移動させるようにさらに構成される、請求項48に記載のデバイス。
  51. 前記1つまたは複数のプロセッサが、前記変換情報を決定するために前記ビットストリームを解析するとき、閾値を上回る非ゼロ値を有する前記複数の階層的な要素の数を減少させるために前記音場がどのように変換されたかについて説明する変換情報を決定するために前記ビットストリームを解析するようにさらに構成され、
    前記1つまたは複数のプロセッサが、前記音場を変換するとき、前記閾値を上回る非ゼロ値を有する前記複数の階層的な要素に基づいて前記音場を再現するとき、前記複数の階層的な要素の前記数を減少させるように実行された前記変換を逆にするために前記変換情報に基づいて前記音場を変換するようにさらに構成される、請求項48に記載の方法。
  52. 前記1つまたは複数のプロセッサが、前記変換情報を決定するために前記ビットストリームを解析するとき、閾値を上回る非ゼロ値を有する前記複数の階層的な要素の数を減少させるために前記音場がどのように回転されたかについて説明する回転情報を決定するために前記ビットストリームを解析するようにさらに構成され、
    前記1つまたは複数のプロセッサが、前記音場を変換するとき、前記閾値を上回る非ゼロ値を有する前記複数の階層的な要素に基づいて前記音場を再現するとき、前記複数の階層的な要素の前記数を減少させるように実行された前記回転を逆にするために前記回転情報に基づいて前記音場を回転させるようにさらに構成される、請求項48に記載のデバイス。
  53. 前記1つまたは複数のプロセッサが、変換情報を決定するために前記ビットストリームを解析するとき、オイラー角を含む回転情報を決定するために前記ビットストリームを解析するようにさらに構成され、ここにおいて、前記オイラー角が、前記音場がどのように回転されたかについて説明する、
    ここにおいて、前記1つまたは複数のプロセッサが、前記音場を変換するとき、前記閾値を上回る非ゼロ値を有する前記複数の階層的な要素に基づいて前記音場を再現するとき、前記オイラー角に基づいて前記音場を回転させるようにさらに構成される、請求項48に記載のデバイス。
  54. 前記1つまたは複数のプロセッサが、前記変換情報を決定するために前記ビットストリームを解析するとき、前記複数の階層的な要素の数を減少させるために前記複数の階層的な要素がどのようにベクトルベースの分解を使用して分解されたかについて説明する平行移動情報を決定するために前記ビットストリームを解析するようにさらに構成され、
    ここにおいて、前記1つまたは複数のプロセッサが、前記複数の階層的な要素に基づいて前記音場を再現するとき、前記ベクトルベース分解された複数の階層的な要素に基づいて前記複数の階層的な要素を再構築するように構成されることを備える、請求項48に記載のデバイス。
  55. 前記ベクトルベースの分解が、特異値分解(SVD)、主成分分析(PCA)、およびカルーネン−レーベ変換(KLT)のうち1つまたは複数を備える、請求項54に記載のデバイス。
  56. 前記1つまたは複数のプロセッサが、前記変換情報を決定するために前記ビットストリームを解析するとき、前記複数の階層的な要素の数を減少させるために前記複数の階層的な要素が前記球面調和関数領域から前記他の領域にどのように変換されたかについて説明する平行移動情報を決定するために前記ビットストリームを解析することを備え、
    ここにおいて、前記1つまたは複数のプロセッサが、前記音場を変換するとき、前記複数の階層的な要素に基づいて前記音場を再現するとき、前記変換された複数の階層的な要素に基づいて前記複数の階層的な要素を再構築することを備えるように構成される、請求項54に記載のデバイス。
  57. 音場について説明する複数の階層的な要素からなるビットストリームを処理するように構成されたデバイスであって、
    前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場がどのように変換されたかについて説明する変換情報を決定するために前記ビットストリームを解析するための手段と、
    前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素に基づいて前記音場を再現するとき、前記複数の階層的な要素の前記数を減少させるように実行された前記変換を逆にするために前記変換情報に基づいて前記音場を変換するための手段と
    を備える、方法。
  58. 実行されると、1つまたは複数のプロセッサに、
    前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素の数を減少させるために前記音場がどのように変換されたかについて説明する変換情報を決定するために前記ビットストリームを解析させ、
    前記音場について説明するのに関連する情報を提供する前記複数の階層的な要素に基づいて前記音場を再現するとき、前記変換情報に基づいて前記音場を変換させる命令をその上に記憶させた非一時的なコンピュータ可読記憶媒体。
  59. 音場について説明する複数の階層的な要素からなるビットストリームを生成する方法であって、
    前記複数の階層的な要素の数を減少させるために、音場を表す前記複数の階層的な要素を球面調和関数領域から別の領域に変換することと、
    前記音場がどのように変換されたかについて説明する変換情報を前記ビットストリーム内で指定することと
    を備える、方法。
  60. 前記複数の階層的な要素を変換することは、前記複数の階層的な要素に対してベクトルベースの変換を実行することを備える、請求項59の方法。
  61. 前記ベクトルベースの変換を実行することが、特異値分解(SVD)、主成分分析(PCA)、およびカルーネン−レーベ変換(KLT)のうち1つまたは複数を前記複数の階層的な要素に対して実行することを備える、請求項60に記載の方法。
JP2015560355A 2013-03-01 2014-02-28 変換球面調和係数 Pending JP2016513811A (ja)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201361771677P 2013-03-01 2013-03-01
US61/771,677 2013-03-01
US201361860201P 2013-07-30 2013-07-30
US61/860,201 2013-07-30
US14/192,829 2014-02-27
US14/192,829 US9685163B2 (en) 2013-03-01 2014-02-27 Transforming spherical harmonic coefficients
PCT/US2014/019468 WO2014134472A2 (en) 2013-03-01 2014-02-28 Transforming spherical harmonic coefficients

Publications (2)

Publication Number Publication Date
JP2016513811A true JP2016513811A (ja) 2016-05-16
JP2016513811A5 JP2016513811A5 (ja) 2017-08-31

Family

ID=51420957

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2015560355A Pending JP2016513811A (ja) 2013-03-01 2014-02-28 変換球面調和係数
JP2015560352A Ceased JP2016510905A (ja) 2013-03-01 2014-02-28 ビットストリームにおける球面調和係数および/または高次アンビソニックス係数の指定

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2015560352A Ceased JP2016510905A (ja) 2013-03-01 2014-02-28 ビットストリームにおける球面調和係数および/または高次アンビソニックス係数の指定

Country Status (10)

Country Link
US (2) US9685163B2 (ja)
EP (2) EP2962297B1 (ja)
JP (2) JP2016513811A (ja)
KR (2) KR20150123310A (ja)
CN (2) CN105027200B (ja)
BR (1) BR112015020892A2 (ja)
ES (1) ES2738490T3 (ja)
HU (1) HUE045446T2 (ja)
TW (2) TWI603631B (ja)
WO (2) WO2014134472A2 (ja)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2665208A1 (en) * 2012-05-14 2013-11-20 Thomson Licensing Method and apparatus for compressing and decompressing a Higher Order Ambisonics signal representation
US9685163B2 (en) 2013-03-01 2017-06-20 Qualcomm Incorporated Transforming spherical harmonic coefficients
US9412385B2 (en) * 2013-05-28 2016-08-09 Qualcomm Incorporated Performing spatial masking with respect to spherical harmonic coefficients
US9854377B2 (en) 2013-05-29 2017-12-26 Qualcomm Incorporated Interpolation for decomposed representations of a sound field
US9466305B2 (en) 2013-05-29 2016-10-11 Qualcomm Incorporated Performing positional analysis to code spherical harmonic coefficients
US9384741B2 (en) * 2013-05-29 2016-07-05 Qualcomm Incorporated Binauralization of rotated higher order ambisonics
WO2014195190A1 (en) * 2013-06-05 2014-12-11 Thomson Licensing Method for encoding audio signals, apparatus for encoding audio signals, method for decoding audio signals and apparatus for decoding audio signals
EP2879408A1 (en) * 2013-11-28 2015-06-03 Thomson Licensing Method and apparatus for higher order ambisonics encoding and decoding using singular value decomposition
US9489955B2 (en) 2014-01-30 2016-11-08 Qualcomm Incorporated Indicating frame parameter reusability for coding vectors
US9922656B2 (en) 2014-01-30 2018-03-20 Qualcomm Incorporated Transitioning of ambient higher-order ambisonic coefficients
US9620137B2 (en) 2014-05-16 2017-04-11 Qualcomm Incorporated Determining between scalar and vector quantization in higher order ambisonic coefficients
US9852737B2 (en) 2014-05-16 2017-12-26 Qualcomm Incorporated Coding vectors decomposed from higher-order ambisonics audio signals
US10770087B2 (en) 2014-05-16 2020-09-08 Qualcomm Incorporated Selecting codebooks for coding vectors decomposed from higher-order ambisonic audio signals
US9747910B2 (en) 2014-09-26 2017-08-29 Qualcomm Incorporated Switching between predictive and non-predictive quantization techniques in a higher order ambisonics (HOA) framework
CN107112024B (zh) * 2014-10-24 2020-07-14 杜比国际公司 音频信号的编码和解码
US10452651B1 (en) 2014-12-23 2019-10-22 Palantir Technologies Inc. Searching charts
CN104795064B (zh) * 2015-03-30 2018-04-13 福州大学 低信噪比声场景下声音事件的识别方法
FR3050601B1 (fr) * 2016-04-26 2018-06-22 Arkamys Procede et systeme de diffusion d'un signal audio a 360°
MC200186B1 (fr) * 2016-09-30 2017-10-18 Coronal Encoding Procédé de conversion, d'encodage stéréophonique, de décodage et de transcodage d'un signal audio tridimensionnel
US11252524B2 (en) * 2017-07-05 2022-02-15 Sony Corporation Synthesizing a headphone signal using a rotating head-related transfer function
RU2740703C1 (ru) 2017-07-14 2021-01-20 Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. Принцип формирования улучшенного описания звукового поля или модифицированного описания звукового поля с использованием многослойного описания
WO2019012131A1 (en) 2017-07-14 2019-01-17 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. CONCEPT FOR GENERATING AN ENHANCED AUDIO FIELD DESCRIPTION OR A MODIFIED AUDIO FIELD DESCRIPTION USING A MULTIPOINT SOUND FIELD DESCRIPTION
BR112020000779A2 (pt) 2017-07-14 2020-07-14 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. aparelho para gerar uma descrição de campo sonoro aprimorada, aparelho para gerar uma descrição de campo sonoro modificada a partir de uma descrição de campo sonoro e metadados com relação às informações espaciais da descrição de campo sonoro, método para gerar uma descrição de campo sonoro aprimorada, método para gerar uma descrição de campo sonoro modificada a partir de uma descrição de campo sonoro e metadados com relação às informações espaciais da descrição de campo sonoro, programa de computador e descrição de campo sonoro aprimorada.
US10075802B1 (en) 2017-08-08 2018-09-11 Qualcomm Incorporated Bitrate allocation for higher order ambisonic audio data
US11281726B2 (en) * 2017-12-01 2022-03-22 Palantir Technologies Inc. System and methods for faster processor comparisons of visual graph features
US10419138B2 (en) 2017-12-22 2019-09-17 At&T Intellectual Property I, L.P. Radio-based channel sounding using phased array antennas
GB2572650A (en) * 2018-04-06 2019-10-09 Nokia Technologies Oy Spatial audio parameters and associated spatial audio playback
KR20200141981A (ko) 2018-04-16 2020-12-21 돌비 레버러토리즈 라이쎈싱 코오포레이션 방향성 사운드 소스의 인코딩 및 디코딩을 위한 방법, 장치 및 시스템
WO2020008112A1 (en) * 2018-07-03 2020-01-09 Nokia Technologies Oy Energy-ratio signalling and synthesis
US20200402521A1 (en) * 2019-06-24 2020-12-24 Qualcomm Incorporated Performing psychoacoustic audio coding based on operating conditions
US11043742B2 (en) 2019-07-31 2021-06-22 At&T Intellectual Property I, L.P. Phased array mobile channel sounding system
WO2021091769A1 (en) * 2019-11-04 2021-05-14 Qualcomm Incorporated Signalling of audio effect metadata in a bitstream
WO2022096376A2 (en) * 2020-11-03 2022-05-12 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for audio signal transformation

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007537464A (ja) * 2004-04-21 2007-12-20 ドルビー・ラボラトリーズ・ライセンシング・コーポレーション ツリー状階層データ構造を順に横断してゆくことによりビットストリームシンタックスを記述するオーディオビットストリームフォーマット
WO2012059385A1 (en) * 2010-11-05 2012-05-10 Thomson Licensing Data structure for higher order ambisonics audio data
JP2012133366A (ja) * 2010-12-21 2012-07-12 Thomson Licensing 二次元または三次元音場のアンビソニックス表現の一連のフレームをエンコードおよびデコードする方法および装置
US20120314878A1 (en) * 2010-02-26 2012-12-13 France Telecom Multichannel audio stream compression

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5594800A (en) 1991-02-15 1997-01-14 Trifield Productions Limited Sound reproduction system having a matrix converter
GB9103207D0 (en) 1991-02-15 1991-04-03 Gerzon Michael A Stereophonic sound reproduction system
AUPO099696A0 (en) 1996-07-12 1996-08-08 Lake Dsp Pty Limited Methods and apparatus for processing spatialised audio
US6021206A (en) 1996-10-02 2000-02-01 Lake Dsp Pty Ltd Methods and apparatus for processing spatialised audio
JPH1118199A (ja) 1997-06-26 1999-01-22 Nippon Columbia Co Ltd 音響処理装置
EP1275272B1 (en) 2000-04-19 2012-11-21 SNK Tech Investment L.L.C. Multi-channel surround sound mastering and reproduction techniques that preserve spatial harmonics in three dimensions
FR2847376B1 (fr) * 2002-11-19 2005-02-04 France Telecom Procede de traitement de donnees sonores et dispositif d'acquisition sonore mettant en oeuvre ce procede
US7167176B2 (en) 2003-08-15 2007-01-23 Microsoft Corporation Clustered principal components for precomputed radiance transfer
US20060247918A1 (en) 2005-04-29 2006-11-02 Microsoft Corporation Systems and methods for 3D audio programming and processing
FR2898725A1 (fr) 2006-03-15 2007-09-21 France Telecom Dispositif et procede de codage gradue d'un signal audio multi-canal selon une analyse en composante principale
US7589725B2 (en) 2006-06-30 2009-09-15 Microsoft Corporation Soft shadows in dynamic scenes
FR2916079A1 (fr) * 2007-05-10 2008-11-14 France Telecom Procede de codage et decodage audio, codeur audio, decodeur audio et programmes d'ordinateur associes
BRPI1009648B1 (pt) * 2009-06-24 2020-12-29 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V decodificador de sinal de áudio, método para decodificador um sinal de áudio e programa de computador com o uso de etapas de processamento de objeto de áudio em cascata
US9493834B2 (en) * 2009-07-29 2016-11-15 Pharnext Method for detecting a panel of biomarkers
US9552840B2 (en) 2010-10-25 2017-01-24 Qualcomm Incorporated Three-dimensional sound capturing and reproducing with multi-microphones
CN102333265B (zh) 2011-05-20 2014-02-19 南京大学 一种基于连续声源概念的三维局部空间声场重放方法
EP2541547A1 (en) 2011-06-30 2013-01-02 Thomson Licensing Method and apparatus for changing the relative positions of sound objects contained within a higher-order ambisonics representation
JP5926377B2 (ja) * 2011-07-01 2016-05-25 ドルビー ラボラトリーズ ライセンシング コーポレイション サンプルレートスケーラブル可逆オーディオコーディング
TW202339510A (zh) * 2011-07-01 2023-10-01 美商杜比實驗室特許公司 用於適應性音頻信號的產生、譯碼與呈現之系統與方法
EP2898506B1 (en) 2012-09-21 2018-01-17 Dolby Laboratories Licensing Corporation Layered approach to spatial audio coding
EP2743922A1 (en) 2012-12-12 2014-06-18 Thomson Licensing Method and apparatus for compressing and decompressing a higher order ambisonics representation for a sound field
US9685163B2 (en) 2013-03-01 2017-06-20 Qualcomm Incorporated Transforming spherical harmonic coefficients

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007537464A (ja) * 2004-04-21 2007-12-20 ドルビー・ラボラトリーズ・ライセンシング・コーポレーション ツリー状階層データ構造を順に横断してゆくことによりビットストリームシンタックスを記述するオーディオビットストリームフォーマット
US20120314878A1 (en) * 2010-02-26 2012-12-13 France Telecom Multichannel audio stream compression
WO2012059385A1 (en) * 2010-11-05 2012-05-10 Thomson Licensing Data structure for higher order ambisonics audio data
JP2012133366A (ja) * 2010-12-21 2012-07-12 Thomson Licensing 二次元または三次元音場のアンビソニックス表現の一連のフレームをエンコードおよびデコードする方法および装置

Also Published As

Publication number Publication date
EP2962297A2 (en) 2016-01-06
US20140249827A1 (en) 2014-09-04
CN105027199A (zh) 2015-11-04
WO2014134472A3 (en) 2015-03-19
TWI583210B (zh) 2017-05-11
KR20150123310A (ko) 2015-11-03
US9959875B2 (en) 2018-05-01
US20140247946A1 (en) 2014-09-04
EP2962298B1 (en) 2019-04-24
KR20150123311A (ko) 2015-11-03
WO2014134472A2 (en) 2014-09-04
ES2738490T3 (es) 2020-01-23
CN105027200B (zh) 2019-04-09
TWI603631B (zh) 2017-10-21
TW201503712A (zh) 2015-01-16
KR101854964B1 (ko) 2018-05-04
EP2962297B1 (en) 2019-06-05
WO2014134462A3 (en) 2014-11-13
EP2962298A2 (en) 2016-01-06
BR112015020892A2 (pt) 2017-07-18
US9685163B2 (en) 2017-06-20
CN105027199B (zh) 2018-05-29
HUE045446T2 (hu) 2019-12-30
WO2014134462A2 (en) 2014-09-04
CN105027200A (zh) 2015-11-04
JP2016510905A (ja) 2016-04-11
TW201446016A (zh) 2014-12-01

Similar Documents

Publication Publication Date Title
JP6067935B2 (ja) 回転された高次アンビソニックスのバイノーラル化
JP2016513811A (ja) 変換球面調和係数
JP6290498B2 (ja) 音場の分解された表現の圧縮
JP6449455B2 (ja) 高次アンビソニック(hoa)バックグラウンドチャネル間の相関の低減
JP6612337B2 (ja) 高次アンビソニックオーディオデータのスケーラブルコーディングのためのレイヤのシグナリング
JP2016524726A (ja) 球面調和係数に対して空間マスキングを実行すること
US20150332682A1 (en) Spatial relation coding for higher order ambisonic coefficients
JP2017534910A (ja) 高次アンビソニックオーディオデータのスケーラブルコーディングのためのチャネルのシグナリング
JP6297721B2 (ja) 高次アンビソニックオーディオレンダラのための希薄情報を取得すること
EP3360343A1 (en) Conversion from object-based audio to hoa
JP2018534616A (ja) チャネルベースオーディオからhoaへの変換
JP6605725B2 (ja) 複数の遷移の間の高次アンビソニック係数のコーディング

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170130

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170130

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170724

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20170724

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20170901

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170912

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20180403