説明

オーディオデータ処理方法及び装置

【課題】オーディオデータ処理方法及び装置を開示する。
【解決手段】オーディオデータ処理方法は、メモリから多数のチャンネルデータのうちいずれか一つのチャンネルデータ及び以前の累積データをローディングし、ローディングされたチャンネルデータをそのチャンネルデータに対応するダウンミックス係数を使用して演算し、前記のローディングされたチャンネルデータが出力チャンネルデータを構成するための最後の入力チャンネルデータであるかどうかを判別し、前記のローディングされたチャンネルデータが前記最後の入力チャンネルデータである場合、前記の演算されたチャンネルデータ及び前記以前の累積データをウィンドウ係数を使用して演算する。したがって、ダウンミックス及びウィンドウイング過程を統合して行うことができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、オーディオデータ処理方法に関するもので、より詳細には、入力されるチャンネルデータのダウンミックス及びウィンドウイングを統合して行えるダウンミックス及びウィンドウイング処理と関連した技術に関するものである。
【背景技術】
【0002】
最近になって、ユーザーにより高品質の現実感のあるオーディオサービスを提供するために、既存の1チャンネル(例えば、モノ)又は2チャンネル(例えば、ステレオ)のオーディオフォーマットから脱皮した多重チャンネルのデジタルサラウンドオーディオフォーマットが多様に開発されている。例えば、Dolby AC3(Dolby Audio Coding―3)、DTS(Digital Theater System)などは、5.1チャンネル以上の多重チャンネルデジタルサラウンドオーディオフォーマットの代表的な例である。
【0003】
このようなDolby AC3、DTSなどは、当初、劇場で現実感のある映画を上映するために開発された多重チャンネルサラウンドオーディオフォーマットであるが、現在は、多様な媒体、例えば、DVD、CD、レーザーディスク、デジタル放送などを通して一般に広く普遍化されている。したがって、一般の家庭でも該当の多重チャンネルのサラウンドオーディオフォーマットをサポートできるオーディオシステム、例えば、ホーム・シアター、DVD/Divxプレーヤーなどを備えれば、誰でも良質のサラウンドサウンドを聴取することができる。
【0004】
ところが、一方では、実際に個人が備えるオーディオシステムの場合、多重チャンネルのサラウンドオーディオフォーマットをサポートできないことも多い。特に、最近は、移動通信端末などのポータブル機器の使用が普遍化されているが、このようなポータブル機器は、その機器的な特性上、サラウンドサウンドを出力するのに適していない。したがって、この場合は、多重チャンネルをサポートしないオーディオシステムのための音質改善技術が要求される。
【0005】
ダウンミックスは、多数のチャンネルのオーディオデータをミックスし、それより少ないチャンネルのオーディオデータに変換する技術を意味し得る。例えば、ダウンミックス装置は、5.1チャンネルのオーディオデータをダウンミックスし、これを2チャンネル(又は1チャンネル)のオーディオデータに変換することができる。このとき、前記2チャンネル(又は1チャンネル)のオーディオデータは5.1チャンネルのオーディオデータの成分を含むので、2チャンネル(又は1チャンネル)のオーディオシステムを用いてより良質のサウンドを再生することができる。
【0006】
通常、このようなダウンミックス機能を備える従来のオーディオシステムは、外部から入力されるビットストリームをチャンネル別に符号化した後、符号化された周波数ドメインのデータを時間ドメインのデータに変換し、変換された時間ドメインのデータを出力チャンネルに合わせてダウンミックスする。そして、ダウンミックスされたデータにウィンドウ係数を乗算するウィンドウイング(Windowing)プロセスを行い、オーディオデータ、例えば、PCMデータを生成する。
【0007】
このような従来のオーディオシステムは、上述したように、ダウンミックスとウィンドウイングをそれぞれ別途のプロセスとして行う。例えば、ダウンミックス過程では、入力される多数のチャンネルのデータをメモリに格納し、格納された各データを各チャンネル別に順次ローディングして処理した後、これらを再びメモリに格納する。その後、ダウンミックス過程が完了すると、ウィンドウイングプロセッサは、メモリに格納されたダウンミックスされたデータをローディングし、これにウィンドウ係数を乗算して出力する。
【0008】
ところが、このような従来の技術は、ダウンミックス過程及びウィンドウイング過程でメモリへのアクセスが非常に頻繁であり、演算量も過度に多いという問題を有している。その理由は、ダウンミックス過程及びウィンドウイング過程は、そのプロセスの特性上、メモリからデータをローディングして処理した後、これを再び格納する過程を持続的に繰り返すためである。したがって、ダウンミックス及びウィンドウイング過程を簡素化できる新しい技術が早急に要求されている。
【発明の概要】
【発明が解決しようとする課題】
【0009】
本発明が解決しようとする技術的な課題は、オーディオデータの処理時にダウンミックス及びウィンドウイングを統合して行うことによって、メモリへのアクセスを最大限減少させ、演算量を大幅に減少できるオーディオデータ処理方法及び装置を提供することにある。
【課題を解決するための手段】
【0010】
このような技術的課題を解決するために、本発明の一側面では、オーディオデータ処理方法を提供する。前記オーディオデータ処理方法は、メモリから多数のチャンネルデータのうちいずれか一つのチャンネルデータ及び以前の累積データをローディングすること;前記のローディングされたチャンネルデータを前記のローディングされたチャンネルデータに対応するダウンミックス係数を使用して演算すること;前記のローディングされたチャンネルデータが出力チャンネルデータを構成するための最後の入力チャンネルデータであるかどうかを判別すること;及び前記のローディングされたチャンネルデータが前記最後の入力チャンネルデータである場合、前記の演算されたチャンネルデータ及び前記以前の累積データをウィンドウ係数を使用して演算することを含む。
【0011】
前記オーディオデータ処理方法は、前記のローディングされたチャンネルデータが前記最後の入力チャンネルデータでない場合、前記の演算されたチャンネルデータを前記以前の累積データに加算する段階;及び前記の加算されたデータを前記メモリに格納することをさらに含むこともできる。また、前記オーディオデータ格納方法は、前記ウィンドウ係数を使用して演算されたデータを特定バッファーに格納することをさらに含むこともできる。
【0012】
前記の演算されたチャンネルデータ及び前記以前の累積データを前記ウィンドウ係数を使用して演算することは、前記の演算されたチャンネルデータを前記以前の累積データに加算すること;前記メモリからウィンドウ係数を抽出すること;及び前記の加算されたデータに前記ウィンドウ係数を乗算することを含むことができる。
【0013】
前記メモリから多数のチャンネルデータのうちいずれか一つのチャンネルデータ及び以前の累積データをローディングすることは、前記いずれか一つのチャンネルデータに含まれる多数のチャンネルサンプルを多数のレジスタに格納することを含むことができる。
【0014】
一方、上述した本発明の技術的課題を解決するために、本発明の他の側面では、オーディオデータ処理装置を提供する。前記オーディオデータ処理装置は、情報を格納するメモリ;及び前記メモリから多数のチャンネルデータのうちいずれか一つのチャンネルデータ及び以前の累積データをローディングし、前記のローディングされたチャンネルデータをダウンミックス係数を使用して演算し、前記のローディングされたチャンネルデータが出力チャンネルを構成するための最後の入力チャンネルデータであるかどうかを判断し、前記のローディングされたチャンネルデータが前記最後の入力チャンネルデータである場合、前記の演算されたチャンネルデータ及び前記のローディングされた以前の累積データをウィンドウ係数を使用して演算する演算部を含むことができる。
【0015】
前記演算部は、前記のローディングされたチャンネルデータが前記最後の入力チャンネルデータでない場合、前記の演算されたチャンネルデータを前記以前の累積データと加算して前記メモリに格納することができる。
【0016】
前記演算部は、前記のローディングされたチャンネルデータが前記最後の入力チャンネルデータである場合、前記の演算されたチャンネルデータを前記以前の累積データと加算し、加算されたデータにウィンドウ係数を乗算することもできる。また、前記演算部は、前記のローディングされたチャンネルデータに前記のローディングされたチャンネルデータに対応するダウンミックス係数を乗算することもできる。
【0017】
前記メモリは、前記多数のチャンネルデータをダウンミックスするための各チャンネル別のダウンミックス係数を含むダウンミックス係数テーブル;及びダウンミックスされたデータをウィンドウイングするためのウィンドウ係数を含むウィンドウ係数テーブルのうち少なくともいずれか一つを格納することもできる。
【0018】
前記のローディングされたチャンネルデータは、多数のチャンネルサンプルを含むことができる。この場合、前記演算部は、前記多数のチャンネルサンプルを格納するための多数のレジスタを含むこともできる。
【発明の効果】
【0019】
以上説明したように、本発明によると、出力チャンネルを構成するための最後の入力チャンネルデータに対するダウンミックス演算を行うとき、ウィンドウイングを並行して行うことによって、ダウンミックス及びウィンドウイングを統合して行うことができる。したがって、ダウンミックス及びウィンドウイングプロセスでメモリへのアクセスを最大限減少させ、演算量を大幅に減少させることができる。
【図面の簡単な説明】
【0020】
【図1】本発明の好適な実施例に係るオーディオデータ処理装置を備えるオーディオシステムの構成を示すブロック図である。
【図2】図1に示されているデータ処理部の構成を示すブロック図である。
【図3】データ処理部に備えられる演算部の動作の流れを説明するためのフローチャートである。
【図4】本発明の好適な他の実施例に係るオーディオデータ処理方法を説明するためのフローチャートである。
【図5】本発明の好適な他の実施例に係るオーディオデータ処理方法を説明するためのフローチャートである。
【発明を実施するための形態】
【0021】
以下、本発明の属する分野で通常の知識を有する者が本発明を容易に実施できるように本発明の好適な実施例を添付の図面を参照して詳細に説明する。以下で説明する本発明の好適な実施例では、内容の明瞭性のために特定の技術用語を使用する。しかし、本発明は、その選択された特定用語に限定されるものではなく、それぞれの特定用語が類似する目的を達成するために類似する方式で動作する全ての技術同義語を含むことを予め明らかにしておく。
【0022】
図1は、本発明の好適な実施例に係るオーディオデータ処理装置を備えるオーディオシステムの構成を示すブロック図である。
【0023】
図1に示すように、オーディオシステム100は、エンコーディングされたビットストリームをフレーム単位で受信して処理した後、これをオーディオ信号として出力する機能を行うことができる。前記オーディオシステム100は、移動通信端末などのようなポータブルデバイスの形態で構成することもでき、伝統的なデジタルハイファイシステムなどのような固定型システムであってもよい。
【0024】
このようなオーディオシステム100は、復号化部10、ドメイン変換部20、データ処理部30及びオーディオ出力部40を含むことができる。
【0025】
前記復号化部10は、外部から入力されるエンコーディングされたビットストリームをフレーム単位で受信し、これを復号化して周波数ドメインのオーディオデータを出力することができる。例えば、前記ビットストリームは、エンコーディングされたN(Nは2以上の整数)個のチャンネルの周波数ドメインのデータを含むことができる。前記復号化部10は、このようなビットストリームをチャンネル別に復号化し、N個のチャンネルの周波数ドメインのオーディオデータを出力することができる。
【0026】
ドメイン変換部20は、復号化部10によって出力された周波数ドメインのオーディオデータを逆変換(Inverse―Transform)し、これを時間ドメインのオーディオデータに変換することができる。例えば、前記ドメイン変換部20は、復号化されたN個のチャンネルの周波数ドメインのオーディオデータをN個のチャンネルの時間ドメインのオーディオデータ、すなわち、N個のチャンネルデータに変換した後、これをデータ処理部30に伝送することができる。
【0027】
データ処理部30は、前記ドメイン変換部20から時間ドメインに変換されたN個のチャンネルデータを受信し、受信されたN個のチャンネルデータをダウンミックス及びウィンドウイングし、M(MはNより小さい整数)個の出力チャンネルデータを出力する機能を行うことができる。前記チャンネルデータは、多数のチャンネルサンプルを含むことができる。
【0028】
例えば、データ処理部30は、N個のチャンネルデータをダウンミックス係数を使用してチャンネル別に順次演算しながらその結果値を累積し、出力チャンネルを構成するための最後の入力チャンネルデータをダウンミックス係数を使用して演算しながらウィンドウイング演算を行うことができる。このようなデータ処理部30は、ダウンミックス及びウィンドウイングが行われたM個の出力チャンネルデータをオーディオ出力部40の特定バッファー、例えば、PCM(Pulse Code Modulation)バッファーなどに格納することもできる。
【0029】
オーディオ出力部40は、データ処理部30から出力されるM個の出力チャンネルデータを受信し、これをM個のスピーカーを使用して出力することができる。例えば、オーディオ出力部40は、PCMバッファーに格納されたM個の出力チャンネルデータを処理した後、これをM個の出力チャンネルに対応するM個の出力スピーカーを使用して出力することができる。
【0030】
図2は、図1に示されているデータ処理部30の構成を示すブロック図である。
【0031】
図1〜図2を参照すると、データ処理部30は、ドメイン変換部20から受信されるN個のチャンネルデータをダウンミックス及びウィンドウイングし、M個の出力チャンネルデータを出力する機能を行うことができる。このようなデータ処理部30は、図2に示すように、メモリ36及び演算部31などを含むことができる。
【0032】
メモリ36は、ドメイン変換部20から伝送されるN個のチャンネルデータをチャンネル単位で受信して格納し、演算部31によって演算される累積データを格納する。メモリ36は、格納されたそれぞれのチャンネルデータ及び累積データを演算部31の要請に従って演算部31に提供することができる。
【0033】
また、メモリ36は、ダウンミックス演算のために必要なダウンミックス係数テーブル、ウィンドウイング演算に必要なウィンドウ係数テーブルなどを格納することもできる。前記ダウンミックス係数テーブルは、ダウンミックス演算時にそれぞれのチャンネルデータに乗算するための各ダウンミックス係数をテーブル形態で構成した情報である。また、ウィンドウ係数テーブルは、フレームに適用されたウィンドウタイプによる各ウィンドウ係数をテーブル形態で構成した情報である。
【0034】
演算部31は、予め定められたダウンミックス及びウィンドウイングアルゴリズムによって動作する演算装置、例えば、コアプロセッサを意味し得る。前記ダウンミックス及びウィンドウイングアルゴリズムは、チャンネルデータの処理順序、出力チャンネルの個数、入力チャンネルと出力チャンネルの対応情報、ダウンミックス及びウィンドウイング演算手順などを制御できる多様な情報を含むことができる。
【0035】
このような演算部31は、演算を行うための算術論理ユニット(ALU:Arithmetic Logic Unit)33及びレジスタ部34を含むことができる。前記ALU33は、前記ダウンミックス及びウィンドウイングアルゴリズムによってダウンミックス及びウィンドウイング過程を制御することができる。前記レジスタ部34は、ALU33の演算動作時に使用するための多数のレジスタを含むことができる。
【0036】
前記演算部31は、メモリ36からN個のチャンネルデータのうちいずれか一つのチャンネルデータ及び以前の累積データをローディングし、そのローディングされたチャンネルデータをダウンミックス係数を使用して演算した後、前記のローディングされたチャンネルデータが出力チャンネルを構成するための最後の入力チャンネルデータであるかどうかを判断することができる。
【0037】
このとき、前記のローディングされたチャンネルデータが前記最後の入力チャンネルデータである場合、演算部31は、演算されたチャンネルデータ及びローディングされた以前の累積データをウィンドウ係数を使用して演算することができる。一方、前記のローディングされたチャンネルデータが前記最後の入力チャンネルデータでない場合、演算部31は、演算されたチャンネルデータ及びローディングされた以前の累積データを加算してメモリに格納することができる。
【0038】
一方、演算部31は、入力されるチャンネルデータのチャンネル個数、すなわち、入力チャンネルの個数Nと出力チャンネルの個数Mとを比較し、入力されるN個のチャンネルデータに対してダウンミックス及びウィンドウイングを行うか、それともウィンドウイングのみを行うかを決定することもできる。
【0039】
図3は、このような演算部31の動作の流れを説明するためのフローチャートであって、本発明の好適な実施例に係るオーディオデータ処理方法を示している。
【0040】
図1〜図3を参照すると、まず、演算部31は、メモリ36からN個のチャンネルデータのうちいずれか一つのチャンネルデータ及び以前の累積データをローディングすることができる(段階:S1)。前記チャンネルデータは、多数のチャンネルサンプルを含むことができる。例えば、演算部31は、メモリ36にアクセスし、前記いずれか一つのチャンネルデータに含まれる多数のチャンネルサンプルを取り出した後、これをレジスタ部34に格納することができる。このとき、レジスタ部34の各レジスタには、対応したチャンネルサンプルが格納されるようになる。
【0041】
続いて、演算部31は、前記のローディングされたチャンネルデータをダウンミックス係数を使用して演算することができる(段階:S2)。例えば、演算部31は、メモリ36に格納されたダウンミックス係数テーブルを照会し、前記のローディングされたチャンネルデータに対応するダウンミックス係数を抽出した後、その抽出されたダウンミックス係数をレジスタ部34に格納されたそれぞれのチャンネルサンプルに乗算することができる。
【0042】
次に、演算部31は、前記のローディングされたチャンネルデータが出力チャンネル(すなわち、M個の出力チャンネルのうちいずれか一つの出力チャンネル)を構成するための最後の入力チャンネルデータであるかどうかを判別する(段階:S3)。N個のチャンネルデータに対するダウンミックス演算順序は、ダウンミックス及びウィンドウイングアルゴリズムによって予め定めることができる。したがって、演算部31は、予め定められたダウンミックス演算順序に基づいて現在ローディングされたチャンネルデータが最後の入力チャンネルデータであるかどうかを判別することができる。
【0043】
例えば、入力されるN個のチャンネルデータが5個のチャンネルデータ、例えば、L(Left)チャンネルデータ、C(Center)チャンネルデータ、R(Right)チャンネルデータ、Ls(Left Surround)チャンネルデータ及びRs(Right Surround)チャンネルデータで、出力チャンネルデータが2チャンネルデータ、例えば、L出力チャンネルデータ及びR出力チャンネルデータであると仮定すると、前記ダウンミックス及びウィンドウイングアルゴリズムは、例えば、前記L出力チャンネルデータを構成するために前記Lチャンネルデータ、Cチャンネルデータ、Lsチャンネルデータ、Rsチャンネルデータの順にダウンミックス係数を使用した演算を行うことを指示することができる。この場合、演算部31は、現在ローディングされたチャンネルデータがRsチャンネルデータであるかどうかをチェックすることによって、前記のローディングされたチャンネルデータがL出力チャンネルデータを構成するための最後の入力チャンネルデータであるかどうかを判別することができる。
【0044】
前記判別で、前記のローディングされたチャンネルデータが出力チャンネルを構成するための最後の入力チャンネルデータである場合、演算部31は、前記ダウンミックス係数を使用して演算されたチャンネルデータ及び以前の累積データをウィンドウ係数を使用して演算することができる(段階:S4)。例えば、演算部31は、前記ダウンミックス係数を使用して演算されたチャンネルデータを以前の累積データに加算し、メモリ36に格納されているウィンドウ係数テーブルを照会し、該当フレームに対応するウィンドウ係数を抽出した後、抽出されたウィンドウ係数を前記の加算された累積データに乗算することができる。そして、演算部31は、前記のウィンドウイング演算が行われたデータをオーディオ出力部40に伝達するために、特定バッファー、例えば、PCMバッファーなどに格納することができる。
【0045】
一方、前記判別で、前記のローディングされたチャンネルデータが出力チャンネルを構成するための最後の入力チャンネルでない場合、演算部31は、前記ダウンミックス係数を使用して演算されたチャンネルデータを以前の累積データに加算し、その加算された累積データをメモリに格納することができる(段階:S5)。このとき、演算部31は、格納された累積データを次の順序のチャンネルデータと共に以前の累積データとしてローディングすることができる。
【0046】
以上説明したように、本発明の好適な実施例に係るオーディオデータ処理方法によると、出力チャンネルを構成するための最後の入力チャンネルデータのダウンミックス時にウィンドウイング演算を行う。したがって、メモリへのアクセス回数を大幅に減少させることができ、演算量も減少させることができる。
【0047】
以下では、本発明の好適な他の実施例としてより具体的な実施例を説明する。まず、以下の実施例では、5個のチャンネルデータ、例えば、Lチャンネルデータ、Cチャンネルデータ、Rチャンネルデータ、Lsチャンネルデータ及びRsチャンネルデータを入力すると仮定し、これをダウンミックス及びウィンドウイングし、2個の出力チャンネルデータ、例えば、L出力チャンネルデータ及びR出力チャンネルデータを出力する例を説明する。
【0048】
図4は、本発明の好適な他の実施例に係るオーディオデータ処理方法を説明するためのフローチャートであって、外部から入力される5個のチャンネルデータのうちRチャンネルデータを除外した4個のチャンネルデータをダウンミックス及びウィンドウイングし、L出力チャンネルデータを出力する手順を示している。このとき、前記4個のチャンネルデータを処理する順序は、Lチャンネルデータ、Cチャンネルデータ、Lsチャンネルデータ及びRsチャンネルデータの順にダウンミックス及びウィンドウイングアルゴリズムによって定められていると仮定する。
【0049】
図4に示すように、まず、演算部31は、メモリから最初に処理するチャンネルデータであるLチャンネルデータをローディングする(段階:S11)。例えば、演算部31は、メモリに格納されたLチャンネルデータに含まれた各チャンネルサンプルを取り出してレジスタ部に格納することができる。この場合、前記Lチャンネルデータが最初に処理するチャンネルデータであるので、以前の累積データは存在しない。
【0050】
続いて、演算部31は、メモリからローディングされたLチャンネルデータに対応するダウンミックス係数をダウンミックス係数テーブルから抽出し、抽出されたダウンミックス係数をLチャンネルデータに乗算する(段階:S12)。例えば、演算部31は、レジスタ部に格納された各チャンネルサンプルにダウンミックス係数をそれぞれ乗算することができる。
【0051】
演算が完了すると、演算部31は、前記LチャンネルデータがL出力チャンネルデータを構成するための最後の入力チャンネルデータ、すなわち、Rsチャンネルデータであるかどうかを判別し、Lチャンネルデータが最後の入力チャンネルデータでないので、前記の演算されたLチャンネルデータをメモリに第1の累積データとして格納する(段階:S13)。
【0052】
このような段階S11〜段階S13の過程は、次の数学式1のように表現することができる。
【0053】
【数1】

【0054】
このとき、前記L[0,1,2,…,k]は、k(kは2以上の整数)個のチャンネルサンプルを有するLチャンネルデータを意味し、aは、Lチャンネルデータに対応するダウンミックス係数を意味し、P1[0,1,2,…,k]は、ダウンミックス係数を使用して演算されたLチャンネルデータ、すなわち、第1の累積データを意味し得る。
【0055】
このような段階S11〜段階S13では、メモリからのローディング動作が1回発生し、メモリへの格納動作が1回発生する。このとき、1回は、k個のチャンネルサンプルを全て処理する単位を意味し得る。
【0056】
次に、演算部31は、メモリから2番目に処理するチャンネルデータであるCチャンネルデータ及び以前の累積データ(すなわち、第1の累積データ)をローディングする(段階:S14)。例えば、演算部31は、メモリに格納されたCチャンネルデータに含まれた各チャンネルサンプルを取り出してレジスタ部に格納することができる。
【0057】
続いて、演算部31は、メモリからローディングされたCチャンネルデータに対応するダウンミックス係数をダウンミックス係数テーブルから抽出し、抽出されたダウンミックス係数をCチャンネルデータに乗算する(段階:S15)。例えば、演算部31は、レジスタ部に格納された各チャンネルサンプルにダウンミックス係数をそれぞれ乗算することができる。
【0058】
演算が完了すると、演算部31は、前記CチャンネルデータがL出力チャンネルデータを構成するための最後の入力チャンネルデータ、すなわち、Rsチャンネルデータであるかどうかを判別し、Cチャンネルデータが最後の入力チャンネルデータでないので、前記の演算されたCチャンネルデータを前記のローディングされた第1の累積データに加算し、加算されたデータを第2の累積データとしてメモリに格納する(段階:S16)。
【0059】
このような段階S14〜段階S16の過程は、次の数学式2のように表現することができる。
【0060】
【数2】

【0061】
このとき、前記C[0,1,2,…,k]は、k個のチャンネルサンプルを有するCチャンネルデータを意味し、bは、Cチャンネルデータに対応するダウンミックス係数を意味し、P1[0,1,2,…、k]は、第1の累積データを意味し、P2[0,1,2,…,k]は、ダウンミックス係数を使用して演算されたCチャンネルデータと第1の累積データとを加算したデータ、すなわち、第2の累積データを意味し得る。
【0062】
このような段階S14〜段階S16では、メモリからのローディング動作が2回発生し、メモリへの格納動作が1回発生する。
【0063】
次に、演算部31は、メモリから3番目に処理するチャンネルデータであるLsチャンネルデータ及び以前の累積データ(すなわち、第2の累積データ)をローディングする(段階:S17)。例えば、演算部31は、メモリに格納されたLsチャンネルデータに含まれた各チャンネルサンプルを取り出してレジスタ部に格納することができる。
【0064】
続いて、演算部31は、メモリからローディングされたLsチャンネルデータに対応するダウンミックス係数をダウンミックス係数テーブルから抽出し、抽出されたダウンミックス係数をLsチャンネルデータに乗算する(段階:S18)。例えば、演算部31は、レジスタ部に格納された各チャンネルサンプルにダウンミックス係数をそれぞれ乗算することができる。
【0065】
演算が完了すると、演算部31は、前記LsチャンネルデータがL出力チャンネルデータを構成するための最後の入力チャンネルデータ、すなわち、Rsチャンネルデータであるかどうかを判別し、Lsチャンネルデータが最後の入力チャンネルデータでないので、前記の演算されたLsチャンネルデータを前記のローディングされた第2の累積データに加算し、加算されたデータを第3の累積データとしてメモリに格納する(段階:S19)。
【0066】
このような段階S17〜段階S19の過程は、次の数学式3のように表現することができる。
【0067】
【数3】

【0068】
このとき、前記Ls[0,1,2,…,k]は、k個のチャンネルサンプルを有するLsチャンネルデータを意味し、cは、Lsチャンネルデータに対応するダウンミックス係数を意味し、P2[0,1,2,…,k]は、第2の累積データを意味し、P3[0,1,2,…,k]は、ダウンミックス係数を使用して演算されたLsチャンネルデータと第2の累積データとを加算したデータ、すなわち、第3の累積データを意味し得る。
【0069】
このような段階S17〜段階S19では、メモリからのローディング動作が2回発生し、メモリへの格納動作が1回発生する。
【0070】
次に、演算部31は、メモリから4番目に処理するチャンネルデータであるRsチャンネルデータ及び以前の累積データ(すなわち、第3の累積データ)をローディングする(段階:S20)。例えば、演算部31は、メモリに格納されたRsチャンネルデータに含まれた各チャンネルサンプルを取り出してレジスタ部に格納することができる。
【0071】
続いて、演算部31は、メモリからローディングされたRsチャンネルデータに対応するダウンミックス係数をダウンミックス係数テーブルから抽出し、抽出されたダウンミックス係数をRsチャンネルデータに乗算する(段階:S21)。例えば、演算部31は、レジスタ部に格納された各チャンネルサンプルにダウンミックス係数をそれぞれ乗算することができる。
【0072】
演算が完了すると、演算部31は、前記RsチャンネルデータがL出力チャンネルデータを構成するための最後の入力チャンネルデータ、すなわち、Rsチャンネルデータであるかどうかを判別し、現在処理しているRsチャンネルデータが最後の入力チャンネルデータであるので、前記の演算されたRsチャンネルデータを前記のローディングされた第3の累積データに加算し、加算されたデータをウィンドウイング係数を使用して演算する(段階:S22)。例えば、演算部31は、ダウンミックス係数を使用して演算されたRsチャンネルデータと第3の累積データとを加算した値にウィンドウ係数を乗算することができる。
【0073】
このような段階S20〜段階S22の過程は、次の数学式4のように表現することができる。
【0074】
【数4】

【0075】
このとき、前記Rs[0,1,2,…,k]は、k個のチャンネルサンプルを有するRsチャンネルデータを意味し、dは、Rsチャンネルデータに対応するダウンミックス係数を意味し、P3[0,1,2,…,k]は、第3の累積データを意味し、W[0,1,2,…,k]は、ウィンドウ係数を意味し、Pout[0,1,2,…,k]は、ダウンミックス係数を使用して演算されたRsチャンネルデータと第3の累積データとを加算した値にウィンドウ係数を乗算したデータ(すなわち、Lチャンネル出力データ)を意味し得る。
【0076】
このような段階S20〜段階S22では、メモリからのローディング動作が3回発生し、メモリへの格納動作が1回発生する。
【0077】
以上では、図4を参照して、4個のチャンネルデータをダウンミックス及びウィンドウイングし、Lチャンネル出力データを出力する過程を説明した。前記過程でメモリからのローディング動作は合計8回、メモリにデータを格納する動作は合計4回発生した。従来の場合、ダウンミックス手順とウィンドウイング手順がそれぞれ完全に区分されるので、前記過程に相応する過程を行う場合、より多くのメモリへのアクセスが発生する。例えば、従来の場合、ダウンミックスが完了すると、完了した各データをメモリに格納し、ウィンドウイング時には格納された各データを再びローディングしなければならないので、不要なメモリへのアクセスが発生するおそれがある。
【0078】
図5は、本発明の好適な他の実施例に係るオーディオデータ処理方法を説明するためのフローチャートであって、外部から入力される5個のチャンネルデータのうちLチャンネルデータを除外した4個のチャンネルデータをダウンミックス及びウィンドウイングし、R出力チャンネルデータを出力する手順を示している。このとき、前記4個のチャンネルデータを処理する順序は、Rチャンネルデータ、Cチャンネルデータ、Lsチャンネルデータ及びRsチャンネルデータの順にダウンミックス及びウィンドウイングアルゴリズムによって定められていると仮定する。
【0079】
図5に示すように、4個のチャンネルデータをダウンミックス及びウィンドウイングしてR出力チャンネルデータを出力する手順は、上述したL出力チャンネルデータを出力する手順と同一の概念で行うことができる。
【0080】
演算部31は、Rチャンネルデータをローディングし(段階:S31)、ダウンミックス係数を使用した演算を行った後(段階:S32)、Rチャンネルデータは最後の入力チャンネルデータでないので、第1の累積データをメモリに格納する(段階:S33)。続いて、演算部31は、Cチャンネルデータをローディングし(段階:S34)、ダウンミックス係数を使用した演算を行った後(段階:S35)、Cチャンネルデータは最後の入力チャンネルデータでないので、第2の累積データをメモリに格納する(段階:S36)。
【0081】
次に、演算部31は、Lsチャンネルデータをローディングし(段階:S37)、ダウンミックス係数を使用した演算を行った後(段階:S38)、Lsチャンネルデータは最後の入力チャンネルデータでないので、第3の累積データをメモリに格納する(段階:S37)。続いて、演算部31は、Rsチャンネルデータをローディングし(段階:S40)、ダウンミックス係数を使用した演算を行った後(段階:S41)、Rsチャンネルデータが最後の入力チャンネルデータであることを確認し、ダウンミックス係数を使用して演算されたRsチャンネルデータと第3の累積データとを加算した後、その加算されたデータをウィンドウ係数を使用して演算する(段階:S42)。
【0082】
以上、本発明について好適な実施例を参照して説明したが、該当の技術分野で熟練した当業者であれば、下記の特許請求の範囲に記載した本発明の技術的思想及び領域から逸脱しない範囲内で本発明を多様に修正及び変更して実施可能であることを理解できるだろう。したがって、本発明の今後の各実施例の変更は、本発明の技術を逸脱することはできないだろう。

【特許請求の範囲】
【請求項1】
メモリから多数のチャンネルデータのうちいずれか一つのチャンネルデータ及び以前の累積データをローディングすること;
前記のローディングされたチャンネルデータを前記のローディングされたチャンネルデータに対応するダウンミックス係数を使用して演算すること;
前記のローディングされたチャンネルデータが出力チャンネルデータを構成するための最後の入力チャンネルデータであるかどうかを判別すること;及び
前記のローディングされたチャンネルデータが前記最後の入力チャンネルデータである場合、前記の演算されたチャンネルデータ及び前記以前の累積データをウィンドウ係数を使用して演算することを含むことを特徴とするオーディオデータ処理方法。
【請求項2】
前記のローディングされたチャンネルデータが前記最後の入力チャンネルデータでない場合、前記の演算されたチャンネルデータを前記以前の累積データに加算すること;及び
前記の加算されたデータを前記メモリに格納することをさらに含むことを特徴とする、請求項1に記載のオーディオデータ処理方法。
【請求項3】
前記の演算されたチャンネルデータ及び前記以前の累積データを前記ウィンドウ係数を使用して演算することは、
前記の演算されたチャンネルデータを前記以前の累積データに加算すること;
前記メモリからウィンドウ係数を抽出すること;及び
前記の加算されたデータに前記ウィンドウ係数を乗算することを含むことを特徴とする、請求項1に記載のオーディオデータ処理方法。
【請求項4】
前記メモリから多数のチャンネルデータのうちいずれか一つのチャンネルデータ及び以前の累積データをローディングすることは、
前記いずれか一つのチャンネルデータに含まれる多数のチャンネルサンプルを多数のレジスタに格納することを含むことを特徴とする、請求項1に記載のオーディオデータ処理方法。
【請求項5】
前記のローディングされたチャンネルデータを前記のローディングされたチャンネルデータに対応する前記ダウンミックス係数を使用して演算することは、
前記メモリから前記のローディングされたチャンネルデータに対応するダウンミックス係数を抽出すること;及び
前記の抽出されたダウンミックス係数を前記レジスタに格納された多数のチャンネルサンプルにそれぞれ乗算することを含むことを特徴とする、請求項4に記載のオーディオデータ処理方法。
【請求項6】
前記ウィンドウ係数を使用して演算されたデータを特定バッファーに格納することをさらに含むことを特徴とする、請求項1に記載のオーディオデータ処理方法。
【請求項7】
情報を格納するメモリ;及び
前記メモリから多数のチャンネルデータのうちいずれか一つのチャンネルデータ及び以前の累積データをローディングし、前記のローディングされたチャンネルデータをダウンミックス係数を使用して演算し、前記のローディングされたチャンネルデータが出力チャンネルを構成するための最後の入力チャンネルデータであるかどうかを判断し、前記のローディングされたチャンネルデータが前記最後の入力チャンネルデータである場合、前記の演算されたチャンネルデータ及び前記のローディングされた以前の累積データをウィンドウ係数を使用して演算する演算部を含むことを特徴とするオーディオデータ処理装置。
【請求項8】
前記演算部は、前記のローディングされたチャンネルデータが前記最後の入力チャンネルデータでない場合、前記の演算されたチャンネルデータを前記以前の累積データと加算して前記メモリに格納することを特徴とする、請求項7に記載のオーディオデータ処理装置。
【請求項9】
前記演算部は、前記のローディングされたチャンネルデータが前記最後の入力チャンネルデータである場合、前記の演算されたチャンネルデータを前記以前の累積データと加算し、加算されたデータにウィンドウ係数を乗算することを特徴とする、請求項7に記載のオーディオデータ処理装置。
【請求項10】
前記メモリは、
前記多数のチャンネルデータをダウンミックスするためのチャンネル別のダウンミックス係数を含むダウンミックス係数テーブル;及び
ダウンミックスされたデータをウィンドウイングするためのウィンドウ係数を含むウィンドウ係数テーブルのうち少なくともいずれか一つを格納することを特徴とする、請求項7に記載のオーディオデータ処理装置。
【請求項11】
前記のローディングされたチャンネルデータは多数のチャンネル6サンプルを含み、
前記演算部は、前記多数のチャンネルサンプルを格納するための多数のレジスタを含むことを特徴とする、請求項7に記載のオーディオデータ処理装置。
【請求項12】
前記演算部は、前記のローディングされたチャンネルデータに前記のローディングされたチャンネルデータに対応するダウンミックス係数を乗算することを特徴とする、請求項7に記載のオーディオデータ処理装置。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公表番号】特表2012−519310(P2012−519310A)
【公表日】平成24年8月23日(2012.8.23)
【国際特許分類】
【出願番号】特願2011−552879(P2011−552879)
【出願日】平成22年3月2日(2010.3.2)
【国際出願番号】PCT/KR2010/001276
【国際公開番号】WO2010/101381
【国際公開日】平成22年9月10日(2010.9.10)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.レーザーディスク
【出願人】(508231762)コア ロジック,インコーポレイテッド (21)
【氏名又は名称原語表記】Core Logic,Inc.
【Fターム(参考)】