(57)【要約】【課題】オーディオデータ処理方法及び装置を開示する。【解決手段】オーディオデータ処理方法は、メモリから多数のチャンネルデータのうちいずれか一つのチャンネルデータ及び以前の累積データをローディングし、ローディングされたチャンネルデータをそのチャンネルデータに対応するダウンミックス係数を使用して演算し、前記のローディングされたチャンネルデータが出力チャンネルデータを構成するための最後の入力チャンネルデータであるかどうかを判別し、前記のローディングされたチャンネルデータが前記最後の入力チャンネルデータである場合、前記の演算されたチャンネルデータ及び前記以前の累積データをウィンドウ係数を使用して演算する。したがって、ダウンミックス及びウィンドウイング過程を統合して行うことができる。【選択図】図３
2012519310.tif 000002
【特許請求の範囲】
【請求項１】
メモリから多数のチャンネルデータのうちいずれか一つのチャンネルデータ及び以前の累積データをローディングすること；
前記のローディングされたチャンネルデータを前記のローディングされたチャンネルデータに対応するダウンミックス係数を使用して演算すること；
前記のローディングされたチャンネルデータが出力チャンネルデータを構成するための最後の入力チャンネルデータであるかどうかを判別すること；及び
前記のローディングされたチャンネルデータが前記最後の入力チャンネルデータである場合、前記の演算されたチャンネルデータ及び前記以前の累積データをウィンドウ係数を使用して演算することを含むことを特徴とするオーディオデータ処理方法。
【請求項２】
前記のローディングされたチャンネルデータが前記最後の入力チャンネルデータでない場合、前記の演算されたチャンネルデータを前記以前の累積データに加算すること；及び
前記の加算されたデータを前記メモリに格納することをさらに含むことを特徴とする、請求項１に記載のオーディオデータ処理方法。
【請求項３】
前記の演算されたチャンネルデータ及び前記以前の累積データを前記ウィンドウ係数を使用して演算することは、
前記の演算されたチャンネルデータを前記以前の累積データに加算すること；
前記メモリからウィンドウ係数を抽出すること；及び
前記の加算されたデータに前記ウィンドウ係数を乗算することを含むことを特徴とする、請求項１に記載のオーディオデータ処理方法。
【請求項４】
前記メモリから多数のチャンネルデータのうちいずれか一つのチャンネルデータ及び以前の累積データをローディングすることは、
前記いずれか一つのチャンネルデータに含まれる多数のチャンネルサンプルを多数のレジスタに格納することを含むことを特徴とする、請求項１に記載のオーディオデータ処理方法。
【請求項５】
前記のローディングされたチャンネルデータを前記のローディングされたチャンネルデータに対応する前記ダウンミックス係数を使用して演算することは、
前記メモリから前記のローディングされたチャンネルデータに対応するダウンミックス係数を抽出すること；及び
前記の抽出されたダウンミックス係数を前記レジスタに格納された多数のチャンネルサンプルにそれぞれ乗算することを含むことを特徴とする、請求項４に記載のオーディオデータ処理方法。
【請求項６】
前記ウィンドウ係数を使用して演算されたデータを特定バッファーに格納することをさらに含むことを特徴とする、請求項１に記載のオーディオデータ処理方法。
【請求項７】
情報を格納するメモリ；及び
前記メモリから多数のチャンネルデータのうちいずれか一つのチャンネルデータ及び以前の累積データをローディングし、前記のローディングされたチャンネルデータをダウンミックス係数を使用して演算し、前記のローディングされたチャンネルデータが出力チャンネルを構成するための最後の入力チャンネルデータであるかどうかを判断し、前記のローディングされたチャンネルデータが前記最後の入力チャンネルデータである場合、前記の演算されたチャンネルデータ及び前記のローディングされた以前の累積データをウィンドウ係数を使用して演算する演算部を含むことを特徴とするオーディオデータ処理装置。
【請求項８】
前記演算部は、前記のローディングされたチャンネルデータが前記最後の入力チャンネルデータでない場合、前記の演算されたチャンネルデータを前記以前の累積データと加算して前記メモリに格納することを特徴とする、請求項７に記載のオーディオデータ処理装置。
【請求項９】
前記演算部は、前記のローディングされたチャンネルデータが前記最後の入力チャンネルデータである場合、前記の演算されたチャンネルデータを前記以前の累積データと加算し、加算されたデータにウィンドウ係数を乗算することを特徴とする、請求項７に記載のオーディオデータ処理装置。
【請求項１０】
前記メモリは、
前記多数のチャンネルデータをダウンミックスするためのチャンネル別のダウンミックス係数を含むダウンミックス係数テーブル；及び
ダウンミックスされたデータをウィンドウイングするためのウィンドウ係数を含むウィンドウ係数テーブルのうち少なくともいずれか一つを格納することを特徴とする、請求項７に記載のオーディオデータ処理装置。
【請求項１１】
前記のローディングされたチャンネルデータは多数のチャンネル６サンプルを含み、
前記演算部は、前記多数のチャンネルサンプルを格納するための多数のレジスタを含むことを特徴とする、請求項７に記載のオーディオデータ処理装置。
【請求項１２】
前記演算部は、前記のローディングされたチャンネルデータに前記のローディングされたチャンネルデータに対応するダウンミックス係数を乗算することを特徴とする、請求項７に記載のオーディオデータ処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オーディオデータ処理方法に関するもので、より詳細には、入力されるチャンネルデータのダウンミックス及びウィンドウイングを統合して行えるダウンミックス及びウィンドウイング処理と関連した技術に関するものである。
【背景技術】
【０００２】
最近になって、ユーザーにより高品質の現実感のあるオーディオサービスを提供するために、既存の１チャンネル（例えば、モノ）又は２チャンネル（例えば、ステレオ）のオーディオフォーマットから脱皮した多重チャンネルのデジタルサラウンドオーディオフォーマットが多様に開発されている。例えば、Ｄｏｌｂｙ  ＡＣ３（Ｄｏｌｂｙ  Ａｕｄｉｏ  Ｃｏｄｉｎｇ―３）、ＤＴＳ（Ｄｉｇｉｔａｌ  Ｔｈｅａｔｅｒ  Ｓｙｓｔｅｍ）などは、５．１チャンネル以上の多重チャンネルデジタルサラウンドオーディオフォーマットの代表的な例である。
【０００３】
このようなＤｏｌｂｙ  ＡＣ３、ＤＴＳなどは、当初、劇場で現実感のある映画を上映するために開発された多重チャンネルサラウンドオーディオフォーマットであるが、現在は、多様な媒体、例えば、ＤＶＤ、ＣＤ、レーザーディスク、デジタル放送などを通して一般に広く普遍化されている。したがって、一般の家庭でも該当の多重チャンネルのサラウンドオーディオフォーマットをサポートできるオーディオシステム、例えば、ホーム・シアター、ＤＶＤ／Ｄｉｖｘプレーヤーなどを備えれば、誰でも良質のサラウンドサウンドを聴取することができる。
【０００４】
ところが、一方では、実際に個人が備えるオーディオシステムの場合、多重チャンネルのサラウンドオーディオフォーマットをサポートできないことも多い。特に、最近は、移動通信端末などのポータブル機器の使用が普遍化されているが、このようなポータブル機器は、その機器的な特性上、サラウンドサウンドを出力するのに適していない。したがって、この場合は、多重チャンネルをサポートしないオーディオシステムのための音質改善技術が要求される。
【０００５】
ダウンミックスは、多数のチャンネルのオーディオデータをミックスし、それより少ないチャンネルのオーディオデータに変換する技術を意味し得る。例えば、ダウンミックス装置は、５．１チャンネルのオーディオデータをダウンミックスし、これを２チャンネル（又は１チャンネル）のオーディオデータに変換することができる。このとき、前記２チャンネル（又は１チャンネル）のオーディオデータは５．１チャンネルのオーディオデータの成分を含むので、２チャンネル（又は１チャンネル）のオーディオシステムを用いてより良質のサウンドを再生することができる。
【０００６】
通常、このようなダウンミックス機能を備える従来のオーディオシステムは、外部から入力されるビットストリームをチャンネル別に符号化した後、符号化された周波数ドメインのデータを時間ドメインのデータに変換し、変換された時間ドメインのデータを出力チャンネルに合わせてダウンミックスする。そして、ダウンミックスされたデータにウィンドウ係数を乗算するウィンドウイング（Ｗｉｎｄｏｗｉｎｇ）プロセスを行い、オーディオデータ、例えば、ＰＣＭデータを生成する。
【０００７】
このような従来のオーディオシステムは、上述したように、ダウンミックスとウィンドウイングをそれぞれ別途のプロセスとして行う。例えば、ダウンミックス過程では、入力される多数のチャンネルのデータをメモリに格納し、格納された各データを各チャンネル別に順次ローディングして処理した後、これらを再びメモリに格納する。その後、ダウンミックス過程が完了すると、ウィンドウイングプロセッサは、メモリに格納されたダウンミックスされたデータをローディングし、これにウィンドウ係数を乗算して出力する。
【０００８】
ところが、このような従来の技術は、ダウンミックス過程及びウィンドウイング過程でメモリへのアクセスが非常に頻繁であり、演算量も過度に多いという問題を有している。その理由は、ダウンミックス過程及びウィンドウイング過程は、そのプロセスの特性上、メモリからデータをローディングして処理した後、これを再び格納する過程を持続的に繰り返すためである。したがって、ダウンミックス及びウィンドウイング過程を簡素化できる新しい技術が早急に要求されている。
【発明の概要】
【発明が解決しようとする課題】
【０００９】
本発明が解決しようとする技術的な課題は、オーディオデータの処理時にダウンミックス及びウィンドウイングを統合して行うことによって、メモリへのアクセスを最大限減少させ、演算量を大幅に減少できるオーディオデータ処理方法及び装置を提供することにある。
【課題を解決するための手段】
【００１０】
このような技術的課題を解決するために、本発明の一側面では、オーディオデータ処理方法を提供する。前記オーディオデータ処理方法は、メモリから多数のチャンネルデータのうちいずれか一つのチャンネルデータ及び以前の累積データをローディングすること；前記のローディングされたチャンネルデータを前記のローディングされたチャンネルデータに対応するダウンミックス係数を使用して演算すること；前記のローディングされたチャンネルデータが出力チャンネルデータを構成するための最後の入力チャンネルデータであるかどうかを判別すること；及び前記のローディングされたチャンネルデータが前記最後の入力チャンネルデータである場合、前記の演算されたチャンネルデータ及び前記以前の累積データをウィンドウ係数を使用して演算することを含む。
【００１１】
前記オーディオデータ処理方法は、前記のローディングされたチャンネルデータが前記最後の入力チャンネルデータでない場合、前記の演算されたチャンネルデータを前記以前の累積データに加算する段階；及び前記の加算されたデータを前記メモリに格納することをさらに含むこともできる。また、前記オーディオデータ格納方法は、前記ウィンドウ係数を使用して演算されたデータを特定バッファーに格納することをさらに含むこともできる。
【００１２】
前記の演算されたチャンネルデータ及び前記以前の累積データを前記ウィンドウ係数を使用して演算することは、前記の演算されたチャンネルデータを前記以前の累積データに加算すること；前記メモリからウィンドウ係数を抽出すること；及び前記の加算されたデータに前記ウィンドウ係数を乗算することを含むことができる。
【００１３】
前記メモリから多数のチャンネルデータのうちいずれか一つのチャンネルデータ及び以前の累積データをローディングすることは、前記いずれか一つのチャンネルデータに含まれる多数のチャンネルサンプルを多数のレジスタに格納することを含むことができる。
【００１４】
一方、上述した本発明の技術的課題を解決するために、本発明の他の側面では、オーディオデータ処理装置を提供する。前記オーディオデータ処理装置は、情報を格納するメモリ；及び前記メモリから多数のチャンネルデータのうちいずれか一つのチャンネルデータ及び以前の累積データをローディングし、前記のローディングされたチャンネルデータをダウンミックス係数を使用して演算し、前記のローディングされたチャンネルデータが出力チャンネルを構成するための最後の入力チャンネルデータであるかどうかを判断し、前記のローディングされたチャンネルデータが前記最後の入力チャンネルデータである場合、前記の演算されたチャンネルデータ及び前記のローディングされた以前の累積データをウィンドウ係数を使用して演算する演算部を含むことができる。
【００１５】
前記演算部は、前記のローディングされたチャンネルデータが前記最後の入力チャンネルデータでない場合、前記の演算されたチャンネルデータを前記以前の累積データと加算して前記メモリに格納することができる。
【００１６】
前記演算部は、前記のローディングされたチャンネルデータが前記最後の入力チャンネルデータである場合、前記の演算されたチャンネルデータを前記以前の累積データと加算し、加算されたデータにウィンドウ係数を乗算することもできる。また、前記演算部は、前記のローディングされたチャンネルデータに前記のローディングされたチャンネルデータに対応するダウンミックス係数を乗算することもできる。
【００１７】
前記メモリは、前記多数のチャンネルデータをダウンミックスするための各チャンネル別のダウンミックス係数を含むダウンミックス係数テーブル；及びダウンミックスされたデータをウィンドウイングするためのウィンドウ係数を含むウィンドウ係数テーブルのうち少なくともいずれか一つを格納することもできる。
【００１８】
前記のローディングされたチャンネルデータは、多数のチャンネルサンプルを含むことができる。この場合、前記演算部は、前記多数のチャンネルサンプルを格納するための多数のレジスタを含むこともできる。
【発明の効果】
【００１９】
以上説明したように、本発明によると、出力チャンネルを構成するための最後の入力チャンネルデータに対するダウンミックス演算を行うとき、ウィンドウイングを並行して行うことによって、ダウンミックス及びウィンドウイングを統合して行うことができる。したがって、ダウンミックス及びウィンドウイングプロセスでメモリへのアクセスを最大限減少させ、演算量を大幅に減少させることができる。
【図面の簡単な説明】
【００２０】
【図１】本発明の好適な実施例に係るオーディオデータ処理装置を備えるオーディオシステムの構成を示すブロック図である。
【図２】図１に示されているデータ処理部の構成を示すブロック図である。
【図３】データ処理部に備えられる演算部の動作の流れを説明するためのフローチャートである。
【図４】本発明の好適な他の実施例に係るオーディオデータ処理方法を説明するためのフローチャートである。
【図５】本発明の好適な他の実施例に係るオーディオデータ処理方法を説明するためのフローチャートである。
【発明を実施するための形態】
【００２１】
以下、本発明の属する分野で通常の知識を有する者が本発明を容易に実施できるように本発明の好適な実施例を添付の図面を参照して詳細に説明する。以下で説明する本発明の好適な実施例では、内容の明瞭性のために特定の技術用語を使用する。しかし、本発明は、その選択された特定用語に限定されるものではなく、それぞれの特定用語が類似する目的を達成するために類似する方式で動作する全ての技術同義語を含むことを予め明らかにしておく。
【００２２】
図１は、本発明の好適な実施例に係るオーディオデータ処理装置を備えるオーディオシステムの構成を示すブロック図である。
【００２３】
図１に示すように、オーディオシステム１００は、エンコーディングされたビットストリームをフレーム単位で受信して処理した後、これをオーディオ信号として出力する機能を行うことができる。前記オーディオシステム１００は、移動通信端末などのようなポータブルデバイスの形態で構成することもでき、伝統的なデジタルハイファイシステムなどのような固定型システムであってもよい。
【００２４】
このようなオーディオシステム１００は、復号化部１０、ドメイン変換部２０、データ処理部３０及びオーディオ出力部４０を含むことができる。
【００２５】
前記復号化部１０は、外部から入力されるエンコーディングされたビットストリームをフレーム単位で受信し、これを復号化して周波数ドメインのオーディオデータを出力することができる。例えば、前記ビットストリームは、エンコーディングされたＮ（Ｎは２以上の整数）個のチャンネルの周波数ドメインのデータを含むことができる。前記復号化部１０は、このようなビットストリームをチャンネル別に復号化し、Ｎ個のチャンネルの周波数ドメインのオーディオデータを出力することができる。
【００２６】
ドメイン変換部２０は、復号化部１０によって出力された周波数ドメインのオーディオデータを逆変換（Ｉｎｖｅｒｓｅ―Ｔｒａｎｓｆｏｒｍ）し、これを時間ドメインのオーディオデータに変換することができる。例えば、前記ドメイン変換部２０は、復号化されたＮ個のチャンネルの周波数ドメインのオーディオデータをＮ個のチャンネルの時間ドメインのオーディオデータ、すなわち、Ｎ個のチャンネルデータに変換した後、これをデータ処理部３０に伝送することができる。
【００２７】
データ処理部３０は、前記ドメイン変換部２０から時間ドメインに変換されたＮ個のチャンネルデータを受信し、受信されたＮ個のチャンネルデータをダウンミックス及びウィンドウイングし、Ｍ（ＭはＮより小さい整数）個の出力チャンネルデータを出力する機能を行うことができる。前記チャンネルデータは、多数のチャンネルサンプルを含むことができる。
【００２８】
例えば、データ処理部３０は、Ｎ個のチャンネルデータをダウンミックス係数を使用してチャンネル別に順次演算しながらその結果値を累積し、出力チャンネルを構成するための最後の入力チャンネルデータをダウンミックス係数を使用して演算しながらウィンドウイング演算を行うことができる。このようなデータ処理部３０は、ダウンミックス及びウィンドウイングが行われたＭ個の出力チャンネルデータをオーディオ出力部４０の特定バッファー、例えば、ＰＣＭ（Ｐｕｌｓｅ  Ｃｏｄｅ  Ｍｏｄｕｌａｔｉｏｎ）バッファーなどに格納することもできる。
【００２９】
オーディオ出力部４０は、データ処理部３０から出力されるＭ個の出力チャンネルデータを受信し、これをＭ個のスピーカーを使用して出力することができる。例えば、オーディオ出力部４０は、ＰＣＭバッファーに格納されたＭ個の出力チャンネルデータを処理した後、これをＭ個の出力チャンネルに対応するＭ個の出力スピーカーを使用して出力することができる。
【００３０】
図２は、図１に示されているデータ処理部３０の構成を示すブロック図である。
【００３１】
図１〜図２を参照すると、データ処理部３０は、ドメイン変換部２０から受信されるＮ個のチャンネルデータをダウンミックス及びウィンドウイングし、Ｍ個の出力チャンネルデータを出力する機能を行うことができる。このようなデータ処理部３０は、図２に示すように、メモリ３６及び演算部３１などを含むことができる。
【００３２】
メモリ３６は、ドメイン変換部２０から伝送されるＮ個のチャンネルデータをチャンネル単位で受信して格納し、演算部３１によって演算される累積データを格納する。メモリ３６は、格納されたそれぞれのチャンネルデータ及び累積データを演算部３１の要請に従って演算部３１に提供することができる。
【００３３】
また、メモリ３６は、ダウンミックス演算のために必要なダウンミックス係数テーブル、ウィンドウイング演算に必要なウィンドウ係数テーブルなどを格納することもできる。前記ダウンミックス係数テーブルは、ダウンミックス演算時にそれぞれのチャンネルデータに乗算するための各ダウンミックス係数をテーブル形態で構成した情報である。また、ウィンドウ係数テーブルは、フレームに適用されたウィンドウタイプによる各ウィンドウ係数をテーブル形態で構成した情報である。
【００３４】
演算部３１は、予め定められたダウンミックス及びウィンドウイングアルゴリズムによって動作する演算装置、例えば、コアプロセッサを意味し得る。前記ダウンミックス及びウィンドウイングアルゴリズムは、チャンネルデータの処理順序、出力チャンネルの個数、入力チャンネルと出力チャンネルの対応情報、ダウンミックス及びウィンドウイング演算手順などを制御できる多様な情報を含むことができる。
【００３５】
このような演算部３１は、演算を行うための算術論理ユニット（ＡＬＵ：Ａｒｉｔｈｍｅｔｉｃ  Ｌｏｇｉｃ  Ｕｎｉｔ）３３及びレジスタ部３４を含むことができる。前記ＡＬＵ３３は、前記ダウンミックス及びウィンドウイングアルゴリズムによってダウンミックス及びウィンドウイング過程を制御することができる。前記レジスタ部３４は、ＡＬＵ３３の演算動作時に使用するための多数のレジスタを含むことができる。
【００３６】
前記演算部３１は、メモリ３６からＮ個のチャンネルデータのうちいずれか一つのチャンネルデータ及び以前の累積データをローディングし、そのローディングされたチャンネルデータをダウンミックス係数を使用して演算した後、前記のローディングされたチャンネルデータが出力チャンネルを構成するための最後の入力チャンネルデータであるかどうかを判断することができる。
【００３７】
このとき、前記のローディングされたチャンネルデータが前記最後の入力チャンネルデータである場合、演算部３１は、演算されたチャンネルデータ及びローディングされた以前の累積データをウィンドウ係数を使用して演算することができる。一方、前記のローディングされたチャンネルデータが前記最後の入力チャンネルデータでない場合、演算部３１は、演算されたチャンネルデータ及びローディングされた以前の累積データを加算してメモリに格納することができる。
【００３８】
一方、演算部３１は、入力されるチャンネルデータのチャンネル個数、すなわち、入力チャンネルの個数Ｎと出力チャンネルの個数Ｍとを比較し、入力されるＮ個のチャンネルデータに対してダウンミックス及びウィンドウイングを行うか、それともウィンドウイングのみを行うかを決定することもできる。
【００３９】
図３は、このような演算部３１の動作の流れを説明するためのフローチャートであって、本発明の好適な実施例に係るオーディオデータ処理方法を示している。
【００４０】
図１〜図３を参照すると、まず、演算部３１は、メモリ３６からＮ個のチャンネルデータのうちいずれか一つのチャンネルデータ及び以前の累積データをローディングすることができる（段階：Ｓ１）。前記チャンネルデータは、多数のチャンネルサンプルを含むことができる。例えば、演算部３１は、メモリ３６にアクセスし、前記いずれか一つのチャンネルデータに含まれる多数のチャンネルサンプルを取り出した後、これをレジスタ部３４に格納することができる。このとき、レジスタ部３４の各レジスタには、対応したチャンネルサンプルが格納されるようになる。
【００４１】
続いて、演算部３１は、前記のローディングされたチャンネルデータをダウンミックス係数を使用して演算することができる（段階：Ｓ２）。例えば、演算部３１は、メモリ３６に格納されたダウンミックス係数テーブルを照会し、前記のローディングされたチャンネルデータに対応するダウンミックス係数を抽出した後、その抽出されたダウンミックス係数をレジスタ部３４に格納されたそれぞれのチャンネルサンプルに乗算することができる。
【００４２】
次に、演算部３１は、前記のローディングされたチャンネルデータが出力チャンネル（すなわち、Ｍ個の出力チャンネルのうちいずれか一つの出力チャンネル）を構成するための最後の入力チャンネルデータであるかどうかを判別する（段階：Ｓ３）。Ｎ個のチャンネルデータに対するダウンミックス演算順序は、ダウンミックス及びウィンドウイングアルゴリズムによって予め定めることができる。したがって、演算部３１は、予め定められたダウンミックス演算順序に基づいて現在ローディングされたチャンネルデータが最後の入力チャンネルデータであるかどうかを判別することができる。
【００４３】
例えば、入力されるＮ個のチャンネルデータが５個のチャンネルデータ、例えば、Ｌ（Ｌｅｆｔ）チャンネルデータ、Ｃ（Ｃｅｎｔｅｒ）チャンネルデータ、Ｒ（Ｒｉｇｈｔ）チャンネルデータ、Ｌｓ（Ｌｅｆｔ  Ｓｕｒｒｏｕｎｄ）チャンネルデータ及びＲｓ（Ｒｉｇｈｔ  Ｓｕｒｒｏｕｎｄ）チャンネルデータで、出力チャンネルデータが２チャンネルデータ、例えば、Ｌ出力チャンネルデータ及びＲ出力チャンネルデータであると仮定すると、前記ダウンミックス及びウィンドウイングアルゴリズムは、例えば、前記Ｌ出力チャンネルデータを構成するために前記Ｌチャンネルデータ、Ｃチャンネルデータ、Ｌｓチャンネルデータ、Ｒｓチャンネルデータの順にダウンミックス係数を使用した演算を行うことを指示することができる。この場合、演算部３１は、現在ローディングされたチャンネルデータがＲｓチャンネルデータであるかどうかをチェックすることによって、前記のローディングされたチャンネルデータがＬ出力チャンネルデータを構成するための最後の入力チャンネルデータであるかどうかを判別することができる。
【００４４】
前記判別で、前記のローディングされたチャンネルデータが出力チャンネルを構成するための最後の入力チャンネルデータである場合、演算部３１は、前記ダウンミックス係数を使用して演算されたチャンネルデータ及び以前の累積データをウィンドウ係数を使用して演算することができる（段階：Ｓ４）。例えば、演算部３１は、前記ダウンミックス係数を使用して演算されたチャンネルデータを以前の累積データに加算し、メモリ３６に格納されているウィンドウ係数テーブルを照会し、該当フレームに対応するウィンドウ係数を抽出した後、抽出されたウィンドウ係数を前記の加算された累積データに乗算することができる。そして、演算部３１は、前記のウィンドウイング演算が行われたデータをオーディオ出力部４０に伝達するために、特定バッファー、例えば、ＰＣＭバッファーなどに格納することができる。
【００４５】
一方、前記判別で、前記のローディングされたチャンネルデータが出力チャンネルを構成するための最後の入力チャンネルでない場合、演算部３１は、前記ダウンミックス係数を使用して演算されたチャンネルデータを以前の累積データに加算し、その加算された累積データをメモリに格納することができる（段階：Ｓ５）。このとき、演算部３１は、格納された累積データを次の順序のチャンネルデータと共に以前の累積データとしてローディングすることができる。
【００４６】
以上説明したように、本発明の好適な実施例に係るオーディオデータ処理方法によると、出力チャンネルを構成するための最後の入力チャンネルデータのダウンミックス時にウィンドウイング演算を行う。したがって、メモリへのアクセス回数を大幅に減少させることができ、演算量も減少させることができる。
【００４７】
以下では、本発明の好適な他の実施例としてより具体的な実施例を説明する。まず、以下の実施例では、５個のチャンネルデータ、例えば、Ｌチャンネルデータ、Ｃチャンネルデータ、Ｒチャンネルデータ、Ｌｓチャンネルデータ及びＲｓチャンネルデータを入力すると仮定し、これをダウンミックス及びウィンドウイングし、２個の出力チャンネルデータ、例えば、Ｌ出力チャンネルデータ及びＲ出力チャンネルデータを出力する例を説明する。
【００４８】
図４は、本発明の好適な他の実施例に係るオーディオデータ処理方法を説明するためのフローチャートであって、外部から入力される５個のチャンネルデータのうちＲチャンネルデータを除外した４個のチャンネルデータをダウンミックス及びウィンドウイングし、Ｌ出力チャンネルデータを出力する手順を示している。このとき、前記４個のチャンネルデータを処理する順序は、Ｌチャンネルデータ、Ｃチャンネルデータ、Ｌｓチャンネルデータ及びＲｓチャンネルデータの順にダウンミックス及びウィンドウイングアルゴリズムによって定められていると仮定する。
【００４９】
図４に示すように、まず、演算部３１は、メモリから最初に処理するチャンネルデータであるＬチャンネルデータをローディングする（段階：Ｓ１１）。例えば、演算部３１は、メモリに格納されたＬチャンネルデータに含まれた各チャンネルサンプルを取り出してレジスタ部に格納することができる。この場合、前記Ｌチャンネルデータが最初に処理するチャンネルデータであるので、以前の累積データは存在しない。
【００５０】
続いて、演算部３１は、メモリからローディングされたＬチャンネルデータに対応するダウンミックス係数をダウンミックス係数テーブルから抽出し、抽出されたダウンミックス係数をＬチャンネルデータに乗算する（段階：Ｓ１２）。例えば、演算部３１は、レジスタ部に格納された各チャンネルサンプルにダウンミックス係数をそれぞれ乗算することができる。
【００５１】
演算が完了すると、演算部３１は、前記ＬチャンネルデータがＬ出力チャンネルデータを構成するための最後の入力チャンネルデータ、すなわち、Ｒｓチャンネルデータであるかどうかを判別し、Ｌチャンネルデータが最後の入力チャンネルデータでないので、前記の演算されたＬチャンネルデータをメモリに第１の累積データとして格納する（段階：Ｓ１３）。
【００５２】
このような段階Ｓ１１〜段階Ｓ１３の過程は、次の数学式１のように表現することができる。
【００５３】
【数１】
2012519310.tif 000003
【００５４】
このとき、前記Ｌ［０，１，２，…，ｋ］は、ｋ（ｋは２以上の整数）個のチャンネルサンプルを有するＬチャンネルデータを意味し、ａは、Ｌチャンネルデータに対応するダウンミックス係数を意味し、Ｐ１［０，１，２，…，ｋ］は、ダウンミックス係数を使用して演算されたＬチャンネルデータ、すなわち、第１の累積データを意味し得る。
【００５５】
このような段階Ｓ１１〜段階Ｓ１３では、メモリからのローディング動作が１回発生し、メモリへの格納動作が１回発生する。このとき、１回は、ｋ個のチャンネルサンプルを全て処理する単位を意味し得る。
【００５６】
次に、演算部３１は、メモリから２番目に処理するチャンネルデータであるＣチャンネルデータ及び以前の累積データ（すなわち、第１の累積データ）をローディングする（段階：Ｓ１４）。例えば、演算部３１は、メモリに格納されたＣチャンネルデータに含まれた各チャンネルサンプルを取り出してレジスタ部に格納することができる。
【００５７】
続いて、演算部３１は、メモリからローディングされたＣチャンネルデータに対応するダウンミックス係数をダウンミックス係数テーブルから抽出し、抽出されたダウンミックス係数をＣチャンネルデータに乗算する（段階：Ｓ１５）。例えば、演算部３１は、レジスタ部に格納された各チャンネルサンプルにダウンミックス係数をそれぞれ乗算することができる。
【００５８】
演算が完了すると、演算部３１は、前記ＣチャンネルデータがＬ出力チャンネルデータを構成するための最後の入力チャンネルデータ、すなわち、Ｒｓチャンネルデータであるかどうかを判別し、Ｃチャンネルデータが最後の入力チャンネルデータでないので、前記の演算されたＣチャンネルデータを前記のローディングされた第１の累積データに加算し、加算されたデータを第２の累積データとしてメモリに格納する（段階：Ｓ１６）。
【００５９】
このような段階Ｓ１４〜段階Ｓ１６の過程は、次の数学式２のように表現することができる。
【００６０】
【数２】
2012519310.tif 000004
【００６１】
このとき、前記Ｃ［０，１，２，…，ｋ］は、ｋ個のチャンネルサンプルを有するＣチャンネルデータを意味し、ｂは、Ｃチャンネルデータに対応するダウンミックス係数を意味し、Ｐ１［０，１，２，…、ｋ］は、第１の累積データを意味し、Ｐ２［０，１，２，…，ｋ］は、ダウンミックス係数を使用して演算されたＣチャンネルデータと第１の累積データとを加算したデータ、すなわち、第２の累積データを意味し得る。
【００６２】
このような段階Ｓ１４〜段階Ｓ１６では、メモリからのローディング動作が２回発生し、メモリへの格納動作が１回発生する。
【００６３】
次に、演算部３１は、メモリから３番目に処理するチャンネルデータであるＬｓチャンネルデータ及び以前の累積データ（すなわち、第２の累積データ）をローディングする（段階：Ｓ１７）。例えば、演算部３１は、メモリに格納されたＬｓチャンネルデータに含まれた各チャンネルサンプルを取り出してレジスタ部に格納することができる。
【００６４】
続いて、演算部３１は、メモリからローディングされたＬｓチャンネルデータに対応するダウンミックス係数をダウンミックス係数テーブルから抽出し、抽出されたダウンミックス係数をＬｓチャンネルデータに乗算する（段階：Ｓ１８）。例えば、演算部３１は、レジスタ部に格納された各チャンネルサンプルにダウンミックス係数をそれぞれ乗算することができる。
【００６５】
演算が完了すると、演算部３１は、前記ＬｓチャンネルデータがＬ出力チャンネルデータを構成するための最後の入力チャンネルデータ、すなわち、Ｒｓチャンネルデータであるかどうかを判別し、Ｌｓチャンネルデータが最後の入力チャンネルデータでないので、前記の演算されたＬｓチャンネルデータを前記のローディングされた第２の累積データに加算し、加算されたデータを第３の累積データとしてメモリに格納する（段階：Ｓ１９）。
【００６６】
このような段階Ｓ１７〜段階Ｓ１９の過程は、次の数学式３のように表現することができる。
【００６７】
【数３】
2012519310.tif 000005
【００６８】
このとき、前記Ｌｓ［０，１，２，…，ｋ］は、ｋ個のチャンネルサンプルを有するＬｓチャンネルデータを意味し、ｃは、Ｌｓチャンネルデータに対応するダウンミックス係数を意味し、Ｐ２［０，１，２，…，ｋ］は、第２の累積データを意味し、Ｐ３［０，１，２，…，ｋ］は、ダウンミックス係数を使用して演算されたＬｓチャンネルデータと第２の累積データとを加算したデータ、すなわち、第３の累積データを意味し得る。
【００６９】
このような段階Ｓ１７〜段階Ｓ１９では、メモリからのローディング動作が２回発生し、メモリへの格納動作が１回発生する。
【００７０】
次に、演算部３１は、メモリから４番目に処理するチャンネルデータであるＲｓチャンネルデータ及び以前の累積データ（すなわち、第３の累積データ）をローディングする（段階：Ｓ２０）。例えば、演算部３１は、メモリに格納されたＲｓチャンネルデータに含まれた各チャンネルサンプルを取り出してレジスタ部に格納することができる。
【００７１】
続いて、演算部３１は、メモリからローディングされたＲｓチャンネルデータに対応するダウンミックス係数をダウンミックス係数テーブルから抽出し、抽出されたダウンミックス係数をＲｓチャンネルデータに乗算する（段階：Ｓ２１）。例えば、演算部３１は、レジスタ部に格納された各チャンネルサンプルにダウンミックス係数をそれぞれ乗算することができる。
【００７２】
演算が完了すると、演算部３１は、前記ＲｓチャンネルデータがＬ出力チャンネルデータを構成するための最後の入力チャンネルデータ、すなわち、Ｒｓチャンネルデータであるかどうかを判別し、現在処理しているＲｓチャンネルデータが最後の入力チャンネルデータであるので、前記の演算されたＲｓチャンネルデータを前記のローディングされた第３の累積データに加算し、加算されたデータをウィンドウイング係数を使用して演算する（段階：Ｓ２２）。例えば、演算部３１は、ダウンミックス係数を使用して演算されたＲｓチャンネルデータと第３の累積データとを加算した値にウィンドウ係数を乗算することができる。
【００７３】
このような段階Ｓ２０〜段階Ｓ２２の過程は、次の数学式４のように表現することができる。
【００７４】
【数４】
2012519310.tif 000006
【００７５】
このとき、前記Ｒｓ［０，１，２，…，ｋ］は、ｋ個のチャンネルサンプルを有するＲｓチャンネルデータを意味し、ｄは、Ｒｓチャンネルデータに対応するダウンミックス係数を意味し、Ｐ３［０，１，２，…，ｋ］は、第３の累積データを意味し、Ｗ［０，１，２，…，ｋ］は、ウィンドウ係数を意味し、Ｐｏｕｔ［０，１，２，…，ｋ］は、ダウンミックス係数を使用して演算されたＲｓチャンネルデータと第３の累積データとを加算した値にウィンドウ係数を乗算したデータ（すなわち、Ｌチャンネル出力データ）を意味し得る。
【００７６】
このような段階Ｓ２０〜段階Ｓ２２では、メモリからのローディング動作が３回発生し、メモリへの格納動作が１回発生する。
【００７７】
以上では、図４を参照して、４個のチャンネルデータをダウンミックス及びウィンドウイングし、Ｌチャンネル出力データを出力する過程を説明した。前記過程でメモリからのローディング動作は合計８回、メモリにデータを格納する動作は合計４回発生した。従来の場合、ダウンミックス手順とウィンドウイング手順がそれぞれ完全に区分されるので、前記過程に相応する過程を行う場合、より多くのメモリへのアクセスが発生する。例えば、従来の場合、ダウンミックスが完了すると、完了した各データをメモリに格納し、ウィンドウイング時には格納された各データを再びローディングしなければならないので、不要なメモリへのアクセスが発生するおそれがある。
【００７８】
図５は、本発明の好適な他の実施例に係るオーディオデータ処理方法を説明するためのフローチャートであって、外部から入力される５個のチャンネルデータのうちＬチャンネルデータを除外した４個のチャンネルデータをダウンミックス及びウィンドウイングし、Ｒ出力チャンネルデータを出力する手順を示している。このとき、前記４個のチャンネルデータを処理する順序は、Ｒチャンネルデータ、Ｃチャンネルデータ、Ｌｓチャンネルデータ及びＲｓチャンネルデータの順にダウンミックス及びウィンドウイングアルゴリズムによって定められていると仮定する。
【００７９】
図５に示すように、４個のチャンネルデータをダウンミックス及びウィンドウイングしてＲ出力チャンネルデータを出力する手順は、上述したＬ出力チャンネルデータを出力する手順と同一の概念で行うことができる。
【００８０】
演算部３１は、Ｒチャンネルデータをローディングし（段階：Ｓ３１）、ダウンミックス係数を使用した演算を行った後（段階：Ｓ３２）、Ｒチャンネルデータは最後の入力チャンネルデータでないので、第１の累積データをメモリに格納する（段階：Ｓ３３）。続いて、演算部３１は、Ｃチャンネルデータをローディングし（段階：Ｓ３４）、ダウンミックス係数を使用した演算を行った後（段階：Ｓ３５）、Ｃチャンネルデータは最後の入力チャンネルデータでないので、第２の累積データをメモリに格納する（段階：Ｓ３６）。
【００８１】
次に、演算部３１は、Ｌｓチャンネルデータをローディングし（段階：Ｓ３７）、ダウンミックス係数を使用した演算を行った後（段階：Ｓ３８）、Ｌｓチャンネルデータは最後の入力チャンネルデータでないので、第３の累積データをメモリに格納する（段階：Ｓ３７）。続いて、演算部３１は、Ｒｓチャンネルデータをローディングし（段階：Ｓ４０）、ダウンミックス係数を使用した演算を行った後（段階：Ｓ４１）、Ｒｓチャンネルデータが最後の入力チャンネルデータであることを確認し、ダウンミックス係数を使用して演算されたＲｓチャンネルデータと第３の累積データとを加算した後、その加算されたデータをウィンドウ係数を使用して演算する（段階：Ｓ４２）。
【００８２】
以上、本発明について好適な実施例を参照して説明したが、該当の技術分野で熟練した当業者であれば、下記の特許請求の範囲に記載した本発明の技術的思想及び領域から逸脱しない範囲内で本発明を多様に修正及び変更して実施可能であることを理解できるだろう。したがって、本発明の今後の各実施例の変更は、本発明の技術を逸脱することはできないだろう。
【図１】
2012519310.tif 000007
【図２】
2012519310.tif 000008
【図３】
2012519310.tif 000009
【図４】
2012519310.tif 000010
【図５】
2012519310.tif 000011
【国際調査報告】
2012519310.tif 000012
2012519310.tif 000013