説明

音声処理装置、音声処理方法、プログラムおよび記録媒体

【課題】ユーザの操作によって対話的に複数の符号化音声データを再生する際に必要とされる復号処理の計算量を低減させ、復号処理を効率化する音声処理装置、音声処理方法、プログラムおよび記録媒体を提供すること。
【解決手段】複数の符号化音声データを復号して逆量子化して周波数データを生成し、各周波数データに加工処理を施して合成した後、合成された単一の周波数データに対して変換処理を施して音声データを生成する音声処理装置を提供する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、符号化された音声データの処理に関し、より詳細には、符号化された音声データを再生する際の計算量を低減する音声処理装置、音声処理方法、プログラムおよび記録媒体に関する。
【背景技術】
【0002】
従来、音声データを再生するために、符号化された音声データ(以下、符号化音声データとして参照する。)を復号して再生する技術が存在する。通常、符号化音声データを再生するには、符号化音声データを復号して逆量子化し、逆離散コサイン変換(IDCT:Inverse Discrete Cosine Transform)変換や逆修正離散コサイン変換(IMDCT:Inverse Modified Discrete Cosine Transform)、サブバンドフィルタ処理、IIR(Infinite impulse response)処理等の変換処理を施して展開データを生成する。
【0003】
このような符号化音声データの復号処理の高速化を図る技術として、例えば、特開2002−58030号公報(特許文献1)は、符号化音声信号から可変長符号の復号によりスケールファクタを復号および逆量子化することにより周波数データを算出し、この周波数データに周波数−時間変換を施してデジタル音声信号を出力する符号化音声信号復号装置を開示する。この符号化音声信号復号装置は、復号処理のうち最も計算量が多く処理時間を要する周波数−時間変換処理をIMDCT回路で行うことにより、音声信号の復号処理の高速化を図っている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2002−58030号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上記特許文献が開示する技術は、単一の音声データを順次復号してIMDCT処理を施す構成であるため、例えば、ユーザの操作によって対話的に非同期に複数の音声データを復号する必要があるビデオゲーム機やパチンコ機器等の遊戯機器、カーナビゲーションシステム、ATM、カラオケ装置等のユーザ対話型機器に当該技術を採用した場合、総ての符号化音声データについてIMDCT処理をする必要があり、IMDCT処理に要する計算量が、復号すべき音声データの個数に比例して増大してしまう。また、非同期に生じる複数の音声データの復号処理を高速化することができず、上述した遊戯機器等の組み込み系装置において小規模化が要求されるCPUの回路規模を増大させ、さらにその消費電力量をも増大させてしまう。
【0006】
本発明は上記の課題を解決するものであり、ユーザの操作によって対話的に複数の符号化音声データを再生する際に必要とされる復号処理の計算量を低減させ、復号処理を効率化する音声処理装置、音声処理方法、プログラムおよび記録媒体を提供することを目的とする。
【課題を解決するための手段】
【0007】
すなわち、本発明によれば、複数の符号化音声データを復号および逆量子化して周波数データを生成し、各周波数データに加工処理を施して合成した後、合成された単一の周波数データに変換処理を施して音声信号を生成する音声処理装置を提供する。これにより、本発明は、再生すべき複数の音声データ総てに演算量の多い変換処理を施す構成に比べて、変換処理に要する演算量を格段に低減することができる。これにより、CPUの回路規模の縮小化を図ることができ、その消費電力量を削減することができる。
【0008】
本発明によれば、複数の符号化音声データを再生する際に必要とされる復号処理の計算量を低減させ、復号処理を効率化する音声処理方法、プログラムおよび記録媒体を提供することができる。
【図面の簡単な説明】
【0009】
【図1】本実施形態の音声処理装置110の機能構成100を示す図。
【図2】本実施形態の音声処理装置110が実行する処理を示す概念図。
【図3】本実施形態の音声処理装置110が実行する処理を示すフローチャート。
【図4】本実施形態の音声処理装置110が実行する加工処理の一実施形態を示す概念図。
【図5】本実施形態の音声処理装置110が実行する加工処理の別の実施形態を示す概念図。
【発明を実施するための形態】
【0010】
以下、本発明について実施形態をもって説明するが、本発明は、後述する実施形態に限定されるものではない。
【0011】
図1は、複数の符号化音声データを復号する本実施形態の音声処理装置110の機能構成100を示す。音声処理装置110は、制御部112と、復号部114と、逆量子化部116と、加工処理部118と、記憶装置124と、音声データバッファ126とを含む。
【0012】
制御部112は、音声処理装置110に実装される各機能手段を制御する機能手段であり、適宜、後述の機能手段を呼び出してその処理を実行させることにより、符号化音声データの復号処理を行う。制御部112は、音声処理装置110のユーザの操作をトリガとするハードウェアまたは上位アプリケーション等からの音声データの再生要求を受領すると、復号部114、逆量子化部116および加工処理部118を呼び出して、符号化音声データを復号し、逆量子化および加工処理を施す。そして、制御部112は、同時に再生すべき他の音声データの再生要求を受領したか否か判断し、再生すべき他の音声データが存在する場合には、対象となる符号化音声データを復号し、逆量子化および加工処理を施す。
【0013】
本実施形態では、制御部112は、或る音声データの復号、逆量子化および加工処理中に他の音声データの再生要求を受領すると、当該再生要求をRAMにFIFO方式で格納することができる。そして、制御部112は、当該RAMを参照して再生要求の有無を判断することにより、同時に再生すべき他の音声データの有無を判断することができる。
【0014】
また、本実施形態では、制御部112は、復号部114によって復号された音声データを逆量子化部116に逆量子化させて音声データバッファ126に保存させ、加工処理部118に対し、再生すべき音声データの周波数データを音声データバッファ126から取得させて加工処理を施させる。この場合、制御部112は、再生要求が格納された上記RAMを参照して、加工処理を施すべき周波数データを判断し、加工処理部118に加工処理を実行させる。再生対象の音声データについて、終端まで復号、逆量子化および加工処理が完了した時点で、制御部112は、当該音声データの再生要求を上記RAMからクリアする。
【0015】
制御部112は、同時に再生すべき総ての音声データの復号、逆量子化および加工処理が終了すると、後述する合成処理部120および変換処理部122を呼び出して、これらの音声データを合成および変換させる。
【0016】
記憶装置124は、音声処理装置110が再生すべき符号化音声データが格納される記憶手段であり、ハードディスク装置(HDD)やEPROM、フラッシュメモリ等の不揮発性記憶装置によって実装できる。符号化音声データは、一定の時間間隔のサンプリング数に応じた2進数で表現可能な音声データを示す数値である。また、符号化音声データは、音声信号に対して、MDCT処理、DCT処理、サブバンドフィルタまたはIIRフィルタ処理を施し、さらに量子化処理および符号化処理を施して生成される音声データである。本実施形態では、ハフマン符号化などの符号化処理を採用することができる。記憶装置124には、複数の符号化音声データが、各符号化音声データを一意に識別可能な符号化音声データ識別子と関連付けて格納されている。
【0017】
復号部114は、記憶装置124に格納された符号化音声データを復号して量子化データを生成する機能手段である。復号部114は、音声データの再生要求により指定された符号化音声データを復号する。当該再生要求には、再生すべき符号化音声データの音声データ識別子が含まれており、復号部114は、この音声データ識別子を使用して、再生すべき符号化音声データを記憶装置124から取得する。本実施形態の復号処理は、例えば、ハフマン復号などの可変長符号復号処理を採用することができる。
【0018】
逆量子化部116は、復号部114が復号した音声データの量子化データを逆量子化して、再生すべき音声データの周波数領域データである周波数データを作成する機能手段である。本実施形態では、逆量子化部116は、作成した周波数データを音声データバッファ126に格納する。音声データバッファ126は、RAM等の記憶装置によって実装でき、ブロック単位の周波数データが上書保存される。
【0019】
加工処理部118は、再生すべき音声データの音量を調整する加工処理を実行する機能手段である。具体的には、加工処理部118は、音声データの周波数データの各成分に、再生すべき音声データの音量であるゲイン(利得)を掛け合わせて音量を変更または調整する音量調整処理を実行することができる。また、加工処理部118は、音声データの周波数データの各成分に、再生すべき音声データの左右のゲインをそれぞれ掛け合わせて音像を調整してパンニングを行うパンニング処理を実行することができる。
【0020】
本実施形態では、加工処理部118は、音声データバッファ126に格納された周波数データを取得して加工処理を施し、後述する合成処理部120が、加工処理が施された複数の音声データの周波数データを合成するが、他の実施形態では、加工処理部118が、加工処理を施した音声データの周波数データを音声データバッファ126に保存し、後述する合成処理部120が、加工処理された複数の音声データの周波数データを音声データバッファ126から取得して合成してもよい。
【0021】
本実施形態では、加工処理部118が、音声データ識別子と当該音声データ識別子が示す音声のゲインとが関連付けて登録されたデータベースを参照することにより、加工処理を施すべき音声データのゲインを取得することができる。また、本実施形態では、加工処理部118が、音声データ識別子と当該音声データ識別子が示す音声の左右のゲインとが関連付けて登録されたデータベースを参照することにより、加工処理を施すべき音声データのゲインを取得することができる。
【0022】
他の実施形態では、音声データ再生要求を送信する上位アプリケーションが、再生すべき音声の音声データ識別子と、そのゲインを音声データ再生要求によって指定することにより、加工処理を施すべき音声データのゲインを取得することができる。また、他の実施形態では、音声データ再生要求を送信する上位アプリケーションが、再生すべき音声の音声データ識別子と、その左右のゲインを音声データ再生要求によって指定することにより、加工処理を施すべき音声データのゲインを取得することができる。さらに、他の実施形態では、当該上位アプリケーションが、再生すべき音声の音声データ識別子と、そのゲインと、左右のゲインの比率とを音声データ再生要求によって指定することにより、加工処理を施すべき音声データのゲインを取得することができる。
【0023】
さらに、音声処理装置110は、合成処理部120と、変換処理部122とを含む。
【0024】
合成処理部120は、加工処理が施された音声データの周波数データである複数の加工済みデータを合成する合成処理を実行して単一の合成データを生成する機能手段である。合成処理部120は、同時に再生すべき総ての音声データに対し、復号、逆量子化、加工処理が完了した時点で制御部112から呼び出され、音声データバッファ126に格納されている総ての加工済みデータを取得して合成し、単一の音声データの周波数データである合成データを生成する。本実施形態の合成処理は、加工済みデータの各成分を加算することにより行われる。
【0025】
本実施形態では、合成処理部120は、加工処理部118が音声データバッファ126から取得して生成した加工済みデータに対して合成処理を施すが、他の実施形態では、加工処理部118が、加工済データを、その音声データ識別子と関連付けて音声データバッファ126に格納し、制御部112が、合成すべき加工済データをその音声データ識別子により指定して、合成処理部120に合成処理を実行させるようにしてもよい。
【0026】
変換処理部122は、合成処理部120が生成した単一の合成データを領域変換する変換処理を実行する機能手段である。本実施形態の変換処理は、IMDCT処理、IDCT処理、サブバンドフィルタ処理およびIIRフィルタ処理を含む。変換処理部122は、周波数データである合成データに対して領域変換を施して、展開データである時間領域データの音声信号を生成する。
【0027】
本実施形態の音声処理装置110は、一定サイズのブロック単位で区切られた符号化音声データをブロック単位で復号し、復号された音声データに逆量子化処理および加工処理を施して合成するが、他の実施形態では、符号化音声データを1周波数成分単位で復号し、逆量子化処理および加工処理を施して合成してもよい。この処理を、同時に再生すべき総ての音声データについて1ブロック分繰り返すことにより、1ブロック分の合成データを生成することができる。これにより、1ブロック分の周波数データを複数保持する音声データバッファを設ける必要性がなくなるため、音声データバッファを使用せずに音声データの逆量子化や加工処理を行うことができ、音声処理装置の処理を高速化することができる。
【0028】
本実施形態の音声処理装置110は、例えば、ビデオゲーム機、パチンコ機器やスロットマシーン等の遊戯機器、カーナビゲーションシステム、現金自動預け払い機(ATM)、カラオケ機器などのユーザの操作によって対話的に音声を再生する音声再生装置を含み、PENTIUM(登録商標)プロセッサや互換プロセッサなどのCPUまたはMPUを搭載し、ITRON、Windows(登録商標)シリーズ、Mac(登録商標)OSシリーズ、UNIX(登録商標)またはLINUX(登録商標)などのOSの管理下で、アセンブラ、C、C++、Java(登録商標)、Java(登録商標)Script、PERL、RUBY、PYTHONなどのプログラム言語で記述された本実施形態のプログラムを実行する。また、音声処理装置110は、プログラムを実行するための実行空間を提供するRAM、プログラムやデータなどを持続的に保持するためのHDDなどを含んでおり、本実施形態の各機能手段をプログラムの実行により、当該音声処理装置上に実現する。
【0029】
本実施形態の各機能手段は、上述したプログラミング言語などで記述された装置実行可能なプログラムにより実現でき、本発明のプログラムは、ハードディスク装置、CD−ROM、MO、フレキシブルディスク、EEPROM、EPROMなどの装置可読な記録媒体に格納して頒布することができ、また他装置が可能な形式でネットワークを介して伝送することができる。
【0030】
図2は、本実施形態の音声処理装置110が実行する復号処理を示す概念図である。音声処理装置110は、音声処理装置110のユーザの操作に起因する音声データの再生要求が指定する符号化音声データである圧縮データ210a,210b,210cを記憶装置124から取得し、それぞれ復号、逆量子化および加工処理を実行する。音声処理装置110は、同時に再生すべき音声データの加工済データが生成されると、これらの加工済データに合成処理を施して合成した後、合成された単一の合成データに対して変換処理を実行して展開データ212を得る。本実施形態では、演算量の多い変換処理を単一の合成データに対してのみ実行するため、再生すべき複数の音声データ総てに対して変換処理を施す構成に比べて、変換処理に要する演算量を格段に低減することができる。これにより、CPUの回路規模の縮小化を図ることができ、その消費電力量を削減することができる。
【0031】
図3は、本実施形態の音声処理装置110が実行する処理を示すフローチャートである。図3の処理は、ステップS300で開始し、ステップS301で音声処理装置110の制御部112が音声データの再生要求の有無を確認する。ステップS302では、制御部112は音声データの再生要求が存在するか否か判断し、音声データの再生要求が存在しないと判断した場合には(no)、制御部112はステップS301およびS302の処理を反復させる。一方、ステップS302の判定で音声データの再生要求が存在すると判断した場合には(yes)、処理をステップS303に分岐させる。
【0032】
ステップS303では、復号部114が、再生要求で指定された符号化音声データを、その音声データ識別子を用いて記憶装置124から取得して復号する。ステップS304では、制御部112が逆量子化部116を呼び出し、逆量子化部116は、復号された音声データを逆量子化して音声データの周波数データを生成し、音声データバッファ126に保存する。
【0033】
ステップS305では、制御部112が、RAMを参照して音声データの再生要求の有無を判断することにより、他に復号すべき音声データがあるか否か判断する。ステップS305の判定で他の復号すべき音声データがあると判断した場合には(yes)、処理をステップS303に分岐させる。一方、他の復号すべき音声データが無いと判断した場合には(no)、処理をステップS306に分岐させる。
【0034】
ステップS306では、制御部112が加工処理部118を呼び出し、加工処理部118は、音声データバッファ126から音声データの周波数データを取得して加工処理を施す。そして、制御部112は合成処理部120を呼び出し、合成処理部120は、加工処理が施された総ての音声データの周波数データに対して合成処理を施す。ステップS307では、制御部112が変換処理部122を呼び出し、変換処理部122は、合成された単一の音声データに対して変換処理を施す。ステップS308では、制御部112は、変換処理が施された音声データを出力する。ステップS309では、制御部112は、音声処理装置110のOSからの終了要求を受信したか否か判断し、終了要求を受信していない場合には(no)、処理をステップS301に戻し、上述した処理を反復させる。一方、終了要求を受信した場合には(yes)、処理をステップS310に分岐させて終了させる。
【0035】
本実施形態では、音声データの出力は、変換処理が施された音声データを音声再生装置が読み込むサウンドバッファに書き込むことにより実現するが、他の実施形態では、当該音声データをファイル等に書き出し、またはネットワークを介して音声再生装置等に送信することにより実現してもよい。
【0036】
図4は、本実施形態の音声処理装置110が実行する加工処理の一実施形態を示す概念図である。図4に示す実施形態では、同時に再生される2つの音声データ410,420に対して、復号、逆量子化、加工処理、合成処理および変換処理が施される。本実施形態の音声データ410,420は、128サンプル単位で変換されているが、他の実施形態では、2の冪乗のサンプル数単位で音声データを変換することもできる。さらに、本実施形態では、2つのモノラル音声データ410,420に対する加工処理について説明するが、他の実施形態では、複数チャンネルの音声データや、さらに多くの音声データにも加工処理を施すことができる。
【0037】
符号データ412,422は、復号処理が実行される前の音声データ410,420の符号化音声データであり、それぞれバイナリデータであるP〜P128およびQ〜Q128をデータ成分として有する。周波数データ414,424は、符号データ412,422を復号および逆量子化して得られたデータであり、各サンプリングデータの波形や周波数等の周波数特性を示すデータ成分X〜X128、Y〜Y128を有している。
【0038】
加工済データ416,426は、周波数データ414,424に加工処理を施して得られるデータである。図4に示す実施形態の加工処理は、音声データの音量を変更または調整する音量調整処理であり、音声データ410のゲインであるVを周波数データ414の各データ成分に掛け合わせることにより加工処理を実現し、加工済データ416を生成する。同様に、音声データ420のゲインであるVを周波数データ424の各データ成分に掛け合わせることにより、加工済データ426を生成する。
【0039】
合成データ430は、加工済データ416,426に対して合成処理を施して得られるデータであり、加工済データ416,426の各データ成分を加算することにより得られる。そして、この合成データ430に対して変換処理を実行することにより、音声データ410および420の音声信号である変換データ432(S,S,…S128)が生成される。
【0040】
図5は、本実施形態の音声処理装置110が実行する加工処理の別の実施形態を示す概念図である。図5に示す実施形態では、図4に示す実施形態と同様に、同時に再生される2つの音声データ510,520に対して、復号、逆量子化、加工処理、合成処理および変換処理が施される。本実施形態の音声データ510,520は、図4に示す実施形態と同様に、128サンプル単位で変換されているが、他の実施形態では、2の冪乗のサンプル数単位で音声データを変換することもできる。さらに、本実施形態では、2つのモノラル音声データ510,520に対する加工処理について説明するが、他の実施形態では、複数チャンネルの音声データや、さらに多くの音声データにも加工処理を施すことができる。
【0041】
符号データ512,522は、復号処理が実行される前の音声データ510,520の符号化音声データであり、それぞれバイナリデータであるP〜P128およびQ〜Q128をデータ成分として有する。周波数データ514,524は、符号データ512,522を復号および逆量子化して得られるデータであり、各サンプリングデータの波形や周波数等の周波数特性を示すデータ成分X〜X128、Y〜Y128を有している。
【0042】
加工済データ516,518,526,528は、周波数データ514,524に加工処理を施して得られるデータである。図5に示す実施形態の加工処理は、音声データの左右の音量を独立して変更または調整するパンニング処理である。本実施形態では、音声データ510の右側ゲインであるV1Rおよび左側ゲインであるV1Lを、周波数データ514の各データ成分にそれぞれ掛け合わせることによりパンニング処理を実現し、音声データ510の左右の加工済データ516,518を生成する。同様に、音声データ520の右側ゲインであるV2Rおよび左側ゲインであるV2Lを、周波数データ524の各データ成分にそれぞれ掛け合わせることによりパンニング処理を実現し、音声データ520の左右の加工済データ526,528を生成する。
【0043】
合成データ530は、右側の加工済データ516,526に対して合成処理を施して得られるデータであり、右側の加工済データ516,526の各データ成分を加算することにより得られる。合成データ532は、左側の加工済データ518,528に対して合成処理を施して得られるデータであり、左側の加工済データ518,528の各データ成分を加算することにより得られる。そして、これらの合成データ530,532に対してそれぞれ変換処理を施すことにより、音声データ510および520の左右の音声信号である変換データ534(S1R,S2R,…S128R)および変換データ536(S1L,S2L,…S128L)が生成される。
【0044】
これまで本実施形態につき説明してきたが、本発明は、上述した実施形態に限定されるものではなく、他の実施形態、追加、変更、削除など、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
【符号の説明】
【0045】
100…機能構成、110…音声処理装置、112…制御部、114…復号部、116…逆量子化部、118…加工処理部、120…合成処理部、122…変換処理部、124…記憶装置、126…音声データバッファ

【特許請求の範囲】
【請求項1】
符号化された音声データである符号化音声データを処理する音声処理装置であって、前記音声処理装置は、
符号化音声データが格納された記憶手段と、
前記記憶手段から符号化音声データを取得して復号する復号手段と、
復号された音声データを逆量子化して周波数データを生成する逆量子化手段と、
前記周波数データに加工処理を施す加工処理手段と、
前記加工処理が施された複数の周波数データを合成する合成手段と、
合成された単一の周波数データに対して変換処理を施して音声信号を生成する変換処理手段と
を含む音声処理装置。
【請求項2】
前記変換処理手段が実行する変換処理は、IMDCT処理、IDCT処理、サブバンドフィルタまたはIIRフィルタ処理である、請求項1に記載の音声処理装置。
【請求項3】
前記符号化音声データは、音声信号に対して、MDCT処理、DCT処理、サブバンドフィルタまたはIIRフィルタ処理を施して生成される、請求項1または2に記載の音声処理装置。
【請求項4】
前記加工処理手段は、前記周波数データの各成分に対して、再生すべき音声データに対応するゲインを掛け合わせることにより前記音声データの音量を調整する、請求項1〜3のいずれか1項に記載の音声処理装置。
【請求項5】
前記加工処理手段は、前記周波数データの各成分に対して、再生すべき音声データに対応する左右のゲインをそれぞれ掛け合わせることにより前記音声データのパンニングを行う、請求項1〜4のいずれか1項に記載の音声処理装置。
【請求項6】
符号化された音声データである符号化音声データを処理する方法であって、前記方法は、音声処理装置が、
記憶手段に格納された複数の符号化音声データを復号するステップと、
復号された音声データを逆量子化して複数の周波数データを生成するステップと、
前記複数の周波数データに加工処理を施すステップと、
前記加工処理が施された複数の周波数データを合成するステップと、
合成された単一の周波数データに対して変換処理を施して音声信号を生成するステップと
を実行する方法。
【請求項7】
前記変換処理は、IMDCT処理、IDCT処理、サブバンドフィルタまたはIIRフィルタ処理である、請求項6に記載の方法。
【請求項8】
前記符号化音声データは、音声信号に対して、MDCT処理、DCT処理、サブバンドフィルタまたはIIRフィルタ処理を施して生成される、請求項6または7に記載の方法。
【請求項9】
前記加工処理を施すステップは、前記周波数データの各成分に対して、再生すべき音声データに対応するゲインを掛け合わせることにより前記音声データの音量を調整する、請求項6〜8のいずれか1項に記載の方法。
【請求項10】
前記加工処理を施すステップは、前記周波数データの各成分に対して、再生すべき音声データに対応する左右のゲインをそれぞれ掛け合わせることにより前記音声データのパンニングを行う、請求項6〜9のいずれか1項に記載の方法。
【請求項11】
音声処理装置に対して、請求項6〜10のいずれか1項に記載のステップを実行させるための装置実行可能なプログラム。
【請求項12】
請求項11に記載されたプログラムを記録したコンピュータ可読な記録媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2011−257575(P2011−257575A)
【公開日】平成23年12月22日(2011.12.22)
【国際特許分類】
【出願番号】特願2010−131680(P2010−131680)
【出願日】平成22年6月9日(2010.6.9)
【出願人】(304012596)株式会社CRI・ミドルウェア (8)
【Fターム(参考)】