JP2014194633A - 直交変換装置、直交変換方法及び直交変換用コンピュータプログラムならびにオーディオ復号装置 - Google Patents

直交変換装置、直交変換方法及び直交変換用コンピュータプログラムならびにオーディオ復号装置 Download PDF

Info

Publication number
JP2014194633A
JP2014194633A JP2013070436A JP2013070436A JP2014194633A JP 2014194633 A JP2014194633 A JP 2014194633A JP 2013070436 A JP2013070436 A JP 2013070436A JP 2013070436 A JP2013070436 A JP 2013070436A JP 2014194633 A JP2014194633 A JP 2014194633A
Authority
JP
Japan
Prior art keywords
coefficient
unit
orthogonal
sub
mirror filter
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.)
Granted
Application number
JP2013070436A
Other languages
English (en)
Other versions
JP6089878B2 (ja
Inventor
Akira Kamano
晃 釜野
Yohei Kishi
洋平 岸
Shunsuke Takeuchi
俊輔 武内
Takeshi Otani
猛 大谷
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2013070436A priority Critical patent/JP6089878B2/ja
Priority to EP14156122.5A priority patent/EP2784691B1/en
Priority to US14/189,148 priority patent/US9257129B2/en
Publication of JP2014194633A publication Critical patent/JP2014194633A/ja
Application granted granted Critical
Publication of JP6089878B2 publication Critical patent/JP6089878B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; 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/02Speech 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 spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/0212Speech 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 spectral analysis, e.g. transform vocoders or subband vocoders using orthogonal transformation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/147Discrete orthonormal transforms, e.g. discrete cosine transform, discrete sine transform, and variations therefrom, e.g. modified discrete cosine transform, integer transforms approximating the discrete cosine transform
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Computational Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Discrete Mathematics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Complex Calculations (AREA)

Abstract

【課題】周波数領域の信号を時間周波数領域の信号に変換する際の演算量を削減可能な直交変換装置を提供する。
【解決手段】直交変換装置(16、16’)は、基底関数の値が対称となるように複数の直交ミラーフィルタ係数を含む係数列が分割された複数のサブ区間のうちの第1のサブ区間に含まれる直交ミラーフィルタ係数の実数成分及び虚数成分のうちの一方を、そのサブ区間に対応する基底関数と各修正離散コサイン変換係数の積和演算により算出するとともに、第1のサブ区間に含まれる直交ミラーフィルタ係数の実数成分及び虚数成分のうちの他方、及び他のサブ区間に含まれる直交ミラーフィルタ係数の実数成分及び虚数成分を、その積和演算により算出される演算値を利用したバタフライ演算により算出する逆指数変換部22と、各直交ミラーフィルタ係数を、その実数成分と虚数成分を合成することで算出する係数調整部23とを有する。
【選択図】図7

Description

本発明は、例えば、直交変換装置、直交変換方法及び直交変換用コンピュータプログラム及びそれらを利用したオーディオ復号装置に関する。
従来より、3チャネル以上のチャネルを持つマルチチャネルオーディオ信号のデータ量を圧縮するためのオーディオ信号の符号化方式が開発されている。そのような符号化方式の一つとして、Moving Picture Experts Group (MPEG)により標準化されたMPEG Surround方式が知られている(例えば、非特許文献1を参照)。MPEG Surround方式では、複数チャネルの信号をダウンミックスすることにより、元の各チャネルの信号の主要成分を表す主信号と空間情報が生成され、この主信号及び空間情報が符号化される。さらに、この符号化方式では、主信号と直交する成分を表す残差信号がさらに算出され、その残差信号も符号化されることがある。
主信号及び残差信号は、ダウンミックスにより得られた信号が一旦時間領域の信号に変換された後、さらに、修正離散コサイン変換(Modified Discrete Cosine Transform, MDCT)によって周波数領域の信号に変換されることによって得られる。このうち、主信号は、復号される際、空間情報を用いてアップミックスするために、一旦時間領域の信号に変換された後、直交ミラーフィルタ(Quadrature Mirror Filter, QMF)により、時間周波数領域の信号であるQMF係数に変換される。そのため、残差信号をアップミックスの際に利用するために、周波数領域の残差信号も時間周波数領域のQMF係数に変換される。
ISO/IEC23003-1
上記のように、MPEG Surround方式で符号化されたオーディオ信号を復号するためには、MDCT、QMFなどの直交変換処理を何度も実行することになるので、演算量が非常に多い。そして演算量が多いほど、オーディオ復号装置に要求される演算能力も高くなり、かつ、オーディオ復号装置の消費電力も多くなる。そのため、MPEG Surround方式で符号化されたオーディオ信号を復号するために要する演算量を削減することが求められている。
そこで、本明細書は、一つの側面として、周波数領域の信号を時間周波数領域の信号に変換する際の演算量を削減可能な直交変換装置を提供することを目的とする。
一つの実施形態によれば、所定の区間に含まれる複数の修正離散コサイン変換係数を複数の直交ミラーフィルタ係数を含む係数列に変換する直交変換装置が提供される。この直交変換装置は、直交ミラーフィルタ係数の係数列を算出するために用いられる基底関数の値が対称となるように係数列が分割された複数のサブ区間のうちの第1のサブ区間に含まれる直交ミラーフィルタ係数の実数成分及び虚数成分のうちの一方を、第1のサブ区間に対応する基底関数と複数の修正離散コサイン変換係数の積和演算により算出するとともに、第1のサブ区間に含まれる直交ミラーフィルタ係数の実数成分及び虚数成分のうちの他方、及び複数のサブ区間のうちの他のサブ区間に含まれる直交ミラーフィルタ係数の実数成分及び虚数成分を、積和演算により算出される演算値を利用したバタフライ演算により算出する逆指数変換部と、複数の直交ミラーフィルタ係数のそれぞれについて、実数成分と虚数成分を合成することでその直交ミラーフィルタ係数を算出する係数調整部とを有する。
本発明の目的及び利点は、請求項において特に指摘されたエレメント及び組み合わせにより実現され、かつ達成される。
上記の一般的な記述及び下記の詳細な記述の何れも、例示的かつ説明的なものであり、請求項のように、本発明を限定するものではないことを理解されたい。
本明細書に開示された直交変換装置は、周波数領域の信号を時間周波数領域の信号に変換する際の演算量を削減できる。
一つの実施形態による直交変換装置を有するオーディオ復号装置の概略構成図である。 符号化されたオーディオ信号が格納されたデータ形式の一例を示す図である。 類似度に対する量子化テーブルの一例を示す図である。 強度差に対する量子化テーブルの一例を示す図である。 予測係数に対する量子化テーブルの一例を示す図である。 MDCT係数からQMF係数への変換の概念図である。 直交変換部の構成図である。 基底関数の周期性の説明図である。 IMDCTの基底関数とIMDSTの基底関数の相違を説明する図である。 局所乗算部の処理の説明図である。 係数算出部により実行されるバタフライ演算の一例の説明図である。 係数算出部により実行されるバタフライ演算の他の一例の説明図である。 直交変換処理の動作フローチャートである。 オーディオ復号装置により実行されるオーディオ復号処理の動作フローチャートである。 第2の実施形態による直交変換部の構成図である。 切り替え処理の動作フローチャートである。 第2逆修正離散指数変換部の構成図である。 バタフライIMDCTの基底コサイン関数と通常のIMDCTの基底コサイン関数の関係を示す図である。 バタフライ演算適用区間内のMDCT係数の入れ替えの説明図である。 逆コサイン変換部の構成図である。 適用区間に含まれるMDCT係数の数Mに対する、基底関数の対称性を利用するIMDETの演算量とFFTを利用するIMDETの演算量の関係を表すグラフである。 上記の実施形態またはその変形例によるオーディオ復号装置の各部の機能を実現するコンピュータプログラムが動作することにより、オーディオ復号装置として動作するコンピュータの構成図である。
以下、図を参照しつつ、一つの実施形態による直交変換装置について説明する。
MPEG Surround方式で符号化されたオーディオ信号を復号する処理において最も演算量が多いのは、周波数領域の残差信号(MDCT係数)を時間周波数領域の信号(QMF係数)に変換する処理である。例えば、ISOのリファレンスデコーダでは、この変換処理の演算量が、復号処理全体の演算量の約70%にもなる。したがって、MDCT係数をQMF係数に変換する際の演算量を減らせれば、MPEG Surround方式で符号化されたオーディオ信号を復号する際の演算量も削減できる。
そこで、この直交変換装置は、MDCT係数をQMF係数に変換する際の演算量を削減する。そのために、この直交変換装置は、MDCT係数をQMF係数に変換する際に利用される、バタフライ逆修正離散コサイン変換(Inverse MDCT, IMDCT)及びバタフライ逆修正離散サイン変換(Inverse Modified Discrete Sine Transform, IMDST)における基底関数の対称性を利用する。なお、本明細書では、説明の便宜上、IMDCTとIMDSTを合わせて逆修正離散指数変換(Inverse Modified Discrete Exponential Transform, IMDET)と呼ぶ。
また、本実施形態では、復号対象となるマルチチャネルオーディオ信号は、5.1chオーディオ信号である。しかし、復号対象となるマルチチャネルオーディオ信号は、5.1chオーディオ信号に限られず、例えば、7.1chのマルチチャネルオーディオ信号であってもよい。
図1は、一つの実施形態によるオーディオ復号装置1の概略構成図である。図1に示すように、オーディオ復号装置1は、分離部11と、主信号復号部12と、時間周波数変換部13と、空間情報復号部14と、残差信号復号部15と、直交変換部16と、アップミックス部17と、周波数時間変換部18とを有する。
オーディオ復号装置1が有するこれらの各部は、それぞれ別個の回路として形成される。あるいはオーディオ復号装置1が有するこれらの各部は、その各部に対応する回路が集積された一つの集積回路としてオーディオ復号装置1に実装されてもよい。さらに、オーディオ復号装置1が有するこれらの各部は、オーディオ復号装置1が有するプロセッサ上で実行されるコンピュータプログラムにより実現される、機能モジュールであってもよい。
分離部11は、符号化されたオーディオ信号を含むデータストリームから、符号化されたオーディオ信号が格納されたデータ形式にしたがって、主信号符号と、空間情報符号と、符号化された残差信号とを取り出す。なお、主信号符号は、Advanced Audio Coding(AAC)符号及びSpectral Band Replication(SBR)符号を含む。
図2は、符号化されたオーディオ信号が格納されたデータ形式の一例を示す図である。この例では、符号化されたオーディオ信号は、MPEG-4 ADTS(Audio Data Transport Stream)形式に従って作成される。
図2に示される符号化データ列200において、データブロック210にAAC符号は格納される。またADTS形式のFILLエレメントが格納されるブロック220の一部領域にSBR符号、空間情報符号及び符号化された残差信号が格納される。
分離部11は、主信号符号を主信号復号部12へ出力する。さらに分離部11は、空間情報符号を空間情報復号部14へ出力し、符号化された残差信号を残差信号復号部15へ出力する。
主信号復号部12は、元のオーディオ信号の各チャネルをダウンミックスすることで生成されるステレオ信号の主成分を表す主信号が符号化された主信号符号を復号する。主信号復号部12は、AAC符号について、例えば、ISO/IEC14496-3規格に記載されているAAC符号に対する復号処理を実行して左側チャネル及び右側チャネルの低周波数成分を再生する。すなわち、主信号復号部12は、AAC符号をエントロピー復号することによって量子化信号を再生し、その量子化信号を逆量子化することでMDCT係数を再生する。そして主信号復号部12は、再生したMDCT係数に対してIMDCT処理を行うことで、フレーム単位の左側チャネル及び右側チャネルの低周波数成分を再生する。
また主信号復号部12は、SBR符号も、例えば、ISO/IEC14496-3規格に記載されているSBR符号に対する復号処理を実行してフレーム単位で左側チャネル及び右側チャネルの高周波数成分を再生する。そして主信号復号部12は、チャネルごとに、その低周波数成分と高周波数成分とを合成することで、ステレオ信号の左側チャネルの信号及び右側チャネルの信号を再生する。そして主信号復号部12は、再生したステレオ信号を時間周波数変換部13へ出力する。
時間周波数変換部13は、直交ミラーフィルタ処理部の一例であり、再生されたステレオ信号の時間領域の各チャネルの信号を、それぞれフレーム単位でQMFフィルタバンクを用いて時間周波数領域のQMF係数に変換する。
なお、QMFフィルタバンクは次式で表される。
Figure 2014194633
ここでnは時間を表す変数であり、1フレームのステレオ信号を時間方向に128等分したときのn番目の時間を表す。なお、フレーム長は、例えば、10〜80msecの何れかとすることができる。またkは周波数帯域を表す変数であり、周波数信号が有する周波数帯域を64等分したときのk番目の周波数帯域を表す。
時間周波数変換部13は、得られたQMF係数をアップミックス部17へ出力する。
空間情報復号部14は、分離部11から受け取った空間情報符号を復号する。なお、空間情報には、例えば、音の広がりを表す二つのチャネル間の類似度ICCと、音の定位を表す二つのチャネル間の強度差CLDが含まれる。さらに、空間情報には、右側チャネルと左側チャネルの信号から中央チャネルの信号を予測する予測係数CPCが含まれる。なお、類似度ICC、強度差CLD及び予測係数CPCは、オーディオ信号をダウンミックスする際に、周波数ごとに求められる。そして空間情報符号には、類似度ICC、強度差CLD及び予測係数CPCのそれぞれについてのハフマン符号が含まれる。
空間情報復号部14は、隣接する周波数間の類似度ICCなどのインデックス値間の差分値とハフマン符号との対応関係を表すテーブルを参照してインデックスの差分値を再生する。空間情報復号部14は、その差分値を周波数帯域ごとに順次加算していくことにより、各周波数帯域のインデックス値を再生する。そして空間情報復号部14は、インデックス値と、類似度ICC、強度差CLDまたは予測係数CPCの量子化値との対応関係を表すテーブルを参照して、そのインデックス値に対応する類似度ICC、強度差CLD及び予測係数CPCの量子化値を決定する。
図3は、類似度に対する量子化テーブルの一例を示す図である。図3に示す量子化テーブル300において、上側の行310の各欄はインデックス値を表し、下側の行320の各欄は、同じ列のインデックス値に対応する類似度の量子化値を表す。また、類似度が取りうる値の範囲は-0.99〜+1である。例えば、周波数帯域kに対するインデックス値が3である場合、空間情報復号部14は、量子化テーブル300を参照することにより、類似度の量子化値を、そのインデックス値3に対応する0.60092とする。
図4は、強度差に対する量子化テーブルの一例を示す図である。図4に示す量子化テーブル400において、行410、430及び450の各欄はインデックス値を表し、行420、440及び460の各欄は、それぞれ、同じ列の行410、430及び450の各欄に示されたインデックス値に対応する強度差の量子化値を表す。
例えば、周波数帯域kに対するインデックス値が5である場合、空間情報復号部14は、量子化テーブル400を参照することにより、強度差の量子化値を、そのインデックス値5に対応する10とする。
図5は、予測係数に対する量子化テーブルの一例を示す図である。図5に示す量子化テーブル500において、行510、520、530、540及び550の各欄はインデックス値を表す。また行515、525、535、545及び555の各欄は、それぞれ、同じ列の行510、520、530、540及び550の各欄に示されたインデックス値に対応する予測係数の量子化値を表す。
例えば、周波数帯域kに対するインデックス値が3である場合、空間情報復号部14は、量子化テーブル500を参照することにより、予測係数の量子化値を、そのインデックス値3に対応する0.3とする。
空間情報復号部14は、各周波数帯域の空間情報の量子化値をアップミックス部17へ出力する。
残差信号復号部15は、符号化された、主信号と直交する成分である残差信号を復号する。MPEG Surround方式では、残差信号もAAC符号化されるので、その符号化の際に、残差信号に対してMDCTが実行される。したがって、残差信号復号部15は、例えば、ISO/IEC13818-7規格に記載されたAAC符号を復号する方法に従って残差信号を復号することにより、MDCT係数で表された残差信号が再生される。このMDCT係数は、直交変換部16へ出力される。
直交変換部16は、直交変換装置の一例であり、周波数領域の信号であるMDCT係数で表された残差信号を、時間周波数領域の信号であるQMF係数に変換する。なお、直交変換部16の詳細については後述する。
アップミックス部17は、周波数帯域ごとに、ステレオ信号の左側チャネル及び右側チャネルのQMF係数及び残差信号のQMF係数を、空間情報に基づいてアップミックスすることにより、5.1chのオーディオ信号の各チャネルのQMF係数を再生する。そのために、アップミックス部17は、例えば、ISO/IEC23003-1規格で規定されたアップミックスの手法を利用すればよい。例えば、アップミックス部17は、ステレオ信号の左側チャネルのQMF係数及び右側チャネルのQMF係数と、残差信号のQMF係数とを、空間情報を用いてアップミックスすることで、左側、右側、及び中央の3チャネルのQMF係数を算出する。さらに、アップミックス部17は、算出された左側チャネルのQMF係数を、左前方チャネルと左後方チャネルをダウンミックスする際に算出された空間情報を用いてアップミックスすることで、左前方チャネル及び左後方チャネルのQMF係数を算出する。同様に、アップミックス部17は、算出された右側チャネルのQMF係数を、右前方チャネルと右後方チャネルをダウンミックスする際に算出された空間情報を用いてアップミックスすることで、右前方チャネル及び右後方チャネルのQMF係数を算出する。さらに、アップミックス部17は、算出された中央チャネルのQMF係数を、中央チャネルと重低音チャネルをダウンミックスする際に算出された空間情報を用いてアップミックスすることで、中央チャネル及び重低音チャネルのQMF係数を算出する。
アップミックス部17は、再生した各チャネルのQMF係数を周波数時間変換部18へ出力する。
周波数時間変換部18は、逆直交ミラーフィルタ処理部の一例であり、各チャネルのQMF係数に対して、時間周波数変換部13により実行されるQMFフィルタバンク処理の逆変換処理を実行することにより、5.1chのオーディオ信号を再生する。そしてオーディオ復号装置1は、再生したオーディオ信号を、例えば、スピーカへ出力する。
以下、直交変換部16について詳述する。
図6は、MDCT係数からQMF係数への変換の概念図である。MDCT係数601は、周波数軸方向にのみ複数の係数を有する。一方、QMF係数602は、時間軸方向と周波数軸方向の両方ともに複数の係数を持つ。
そこで、直交変換部16は、MDCT係数からQMF係数へ変換するために、ISO/IEC23003-1の規定に従って、周波数帯域603〜605のように、MDCT係数全体を隣接する周波数帯域同士が半分ずつオーバーラップする複数の周波数帯域で分割する。この場合、各周波数帯域は、通常のIMDCTが適用される周波数帯域の2倍の長さを持ち、例えば、連続する2N個のMDCT係数を含む。そして直交変換部16は、各周波数帯域に対してバタフライIMDET演算を行うことにより、周波数帯域間の折り返し歪みが相互に打ち消され、周波数帯域ごとに、時間軸方向に沿った2N個のQMF係数を得る。
しかし、このバタフライIMDET演算の演算量は非常に多い。そこで、本実施形態による直交変換部16は、このバタフライIMDET演算の演算量を削減するために、IMDET演算の基底関数の対称性を利用する。
図7は、直交変換部16の構成図である。直交変換部16は、窓処理部21と、逆修正離散指数変換部22と、係数調整部23とを有する。
窓処理部21は、残差信号のMDCT係数に、バタフライIMDCT及びバタフライIMDST用の窓関数及びゲイン(1/2N)1/2を乗じる。本実施形態では、窓関数wf[n]は、次式で表される。
Figure 2014194633
ただし、(2N)は、バタフライIMDET演算の適用区間である周波数帯域fに含まれるMDCT係数の数である。またnは、バタフライIMDET演算の結果として得られる係数の時間軸に沿った順番を表す。窓処理部21は、窓関数及びゲインが乗じられた残差信号のMDCT係数を逆修正離散指数変換部22へ出力する。
逆修正離散指数変換部22は、周波数帯域全体を区切る複数の区間のそれぞれごとに、窓関数及びゲインが乗じられた残差信号のMDCT係数に対してIMDETを実行することにより、その区間に対応する周波数のQMF係数の実数成分及び虚数成分を算出する。
ここで、区間内に含まれるMDCT係数の数が8個、すなわち、N=4である場合、IMDETの演算は、次式のように、変換行列を用いて表される。
Figure 2014194633
xi(i=1,2,..,8)は、MDCT係数である。またyj(j=1,2,..,8)は、QMF係数の実数成分であり、yj(j=9,10,..,16)は、QMF係数の虚数成分である。そして変換行列の各要素Cn,kは、IMDET中のIMDCTで用いられる基底関数であり、コサイン関数である。一方、各要素Sn,kは、IMDET中のIMDSTで用いられる基底関数であり、サイン関数である。
上記のように、IMDETに使用される基底関数は三角関数なので、基底関数には周期性がある。図8を参照しつつその周期性について説明する。図8に示したグラフ800は、k=0の場合のIMDCTの基底関数を表す。基底関数c0,k〜c7,kには、コサイン関数の1/2周期が含まれるので、基底関数の前半の区間、すなわち、c0,k〜c3,kに着目すると、c0,k〜c3,kは、その区間の中点に対して対称となっている。したがって、c0,k=c3,k及びc1,k=c2,kが成立する。同様に、後半の区間c4,k〜c7,kも、その区間の中点に対して、符号は反転するものの、基底関数の絶対値は対称となっている。したがって、c4,k=-c7,k及びc5,k=-c6,kが成立する。このような対称性は、kが0でない場合についても成立する。同様に、IMDSTの基底関数s0,k〜s7,kもサイン関数であり、(3)式から明らかなように、サイン関数の1/2周期が含まれるので、区間s0,k〜s3,k及び区間s4,k〜s7,kのそれぞれについて対称性がある。
したがって、(3)式の変換行列のうち、半分の行について計算結果が得られれば、他の行についてはその計算結果を利用できる。具体的には、逆修正離散指数変換部22は、(3)式によって計算されるQMF係数列の前半のうちの前半及び後半の何れかに対応する行と、そのQMF係数列の後半のうちの前半及び後半の何れかに対応する行についてのみ計算すればよい。例えば、y4(すなわち、n=3の行)とy3(すなわち、n=2の行)は、それぞれ、y1(すなわち、n=0の行)、y2(すなわち、n=1の行)についての計算結果を利用して算出できる。同様に、y8(すなわち、n=7の行)とy7(すなわち、n=6の行)は、それぞれ、y5(すなわち、n=4の行)、y6(すなわち、n=5の行)についての計算結果を利用して算出できる。
さらに、図9を参照しつつ、IMDCTの基底関数とIMDSTの基底関数の違いについて説明する。図9に示したグラフ900は、k=0の場合のIMDCTの基底関数を表す。一方、グラフ910は、k=0の場合のIMDSTの基底関数を表す。IMDCTの基底関数c0,k〜c7,kとIMDSTの基底関数s0,k〜s7,kの相違点は、コサイン関数かサイン関数かという点にすぎない。そのため、(3)式に示された変換行列の縦の列に着目すると、IMDCTの基底関数c0,k〜c7,kとIMDSTの基底関数s0,k〜s7,kとは、1/4周期ずれているだけで、基底関数の形状は同じである。したがって、IMDSTの基底関数s0,k〜s7,kの絶対値は、IMDCTの基底関数c0,k〜c7,kの何れかの絶対値と等しい。すなわち、逆修正離散指数変換部22は、(3)式において、IMDCT(すなわち、変換行列の上半分)またはIMDST(すなわち、変換行列の下半分)の何れか一方について計算すれば、他方はその計算結果を利用できる。例えば、逆修正離散指数変換部22は、(3)式によって計算されるQMF係数列の前半についてのIMDCTの計算結果を利用して、そのQMF係数列の後半のIMDSTを計算できる。逆に、逆修正離散指数変換部22は、(3)式によって計算されるQMF係数列の後半についてのIMDCTの計算結果を利用して、そのQMF係数列の前半のIMDSTを計算できる。同様に、逆修正離散指数変換部22は、るQMF係数列の前半及び後半についてのIMDSTの計算結果を利用して、そのQMF係数列の後半及び前半のIMDCTを計算できる。
したがって、結局、逆修正離散指数変換部22は、(3)式の行列に含まれる全ての要素のうちの1/4の要素についてのみ、MDCT係数との乗算を行うことで、IMDET演算全体を実行できる。
そこで、逆修正離散指数変換部22は、上記のように、(3)式の行列の含まれる一部の要素についてのみ、MDCT係数との乗算を行うことでQMF係数を算出するために、記憶部31と、局所乗算部32と、係数算出部33とを有する。
記憶部31は、例えば、不揮発性の読み出し専用のメモリ回路と揮発性の読み書き可能なメモリ回路とを有する。そして記憶部31は、IMDET演算が行われる区間の長さごとに、MDCT係数に乗じる基底関数の要素を表すテーブルを記憶する。各テーブルには、例えば、算出されるQMF係数を含む区間の前半のうちの前半及び後半の何れかを算出するための基底関数の値と、その区間の後半のうちの前半及び後半の何れかを算出するための基底関数の値が格納される。この基底関数の値は、QMF係数の実数成分を算出するために用いられる値、すなわち、IMDCT用の基底関数の値であってもよく、あるいは、QMF係数の虚数成分を算出するために用いられる値、すなわち、IMDST用の基底関数の値であってもよい。t例えば、(3)式に示されるように、IMDET演算が行われる区間の長さが8、すなわち、N=4に対応するテーブルは、(3)式に示された行列のうちの1,2,5,6行目の基底関数の要素{c0,k, c1,k, c4,k, c5,k}を格納する。また、IMDET演算が行われる区間の長さが4、すなわち、N=2の場合、基底関数の行列は、8行×4列の要素を持つ。そのうち、上側の4行の要素がIMDCTの基底関数cn,k(n=0,..,3, k=0,..,3)であり、下側の4行の要素がIMDSTの基底関数sn,k(n=0,..,3, k=0,..,3)である。このうち、N=2に対応するテーブルは、1行目及び3行目の基底関数の要素{c0,k, c2,k}を格納する。
記憶部31は、さらに、局所乗算部32による中間演算値を、係数算出部33が利用できるように一時的に記憶する。
局所乗算部32は、残差信号のフレームの長さに応じて、記憶部31に記憶されているテーブルの中から、利用するテーブルを読み込む。そして局所乗算部32は、テーブルに格納された各基底関数の要素に対応するMDCT係数を乗じる。そして局所乗算部32は、乗算を行った変換行列の行ごとに、奇数列の要素とMDCT係数の積の総和Σci,2k*x[2k+1] (k=0, 1,..,2N-1)と、偶数列の要素とMDCT係数の積の総和Σci,2k+1*x[2(k+1)]をそれぞれ算出する。そして局所乗算部32は、それら総和を中間演算値として記憶部31に記憶する。
図10は、区間の長さが8(N=4)の場合における、局所乗算部32の処理の説明図である。変換行列とMDCT係数列の積である行列1000のうち、1,2,5,6行目のそれぞれについて、局所乗算部32は、実線で囲まれた奇数列の要素ci,2k*x[2k+1]を計算する。そして局所乗算部32は、その要素の総和Σci,2k*x[2k+1]をyioddとして算出する。また局所乗算部32は、点線で囲まれた偶数列の要素ci,2k+1*x[2(k+1)]を計算する。そして局所乗算部32は、その要素の総和Σci,2k+1*x[2(k+1)]をyievenとして算出する。
係数算出部33は、記憶部31に記憶されている中間演算値を利用して、バタフライ演算を行うことにより、QMF係数の実数成分及び虚数成分を算出する。
図11は、係数算出部33により実行されるバタフライ演算の説明図である。この例では、QMF係数列を、各QMF係数を算出するために利用される基底関数の値が対称となるように4分割した複数のサブ区間のうち、1番目と3番目のサブ区間について局所乗算部32による中間演算値が得られている。すなわち、IMDETの変換行列とMDCT係数の積である行列1100を縦方向に等分割した8個のブロックのうち、1番目のブロック1101と3番目のブロック1103の各行について、奇数列の要素の総和yioddと偶数列の要素の総和yievenが算出されている。
なお、各ブロックの右端に示した番号は、N=4の場合において、その行の計算に利用される、局所乗算部32により中間演算値が計算された行の番号を表す。
ブロック1101とブロック1103の各行については、係数算出部33は、単純に奇数列の要素の総和yioddと偶数列の要素の総和yievenを加算することで、対応するQMF係数の実数成分を算出できる。
一方、2番目のブロック1102の各行に相当するQMF係数の値は、1番目のブロック1101の各行に相当するQMF係数の値と上下対称になっている。例えば、N=4の場合、各ブロックには、2行ずつ含まれる。そのため、ブロック1102の上側の行、すなわち行列1100の3番目の行に相当するQMF係数の実数成分y3は、ブロック1101の下側の行、すなわち、行列1100の2番目の行に相当するQMF係数の実数成分y2と等しい。同様に、ブロック1102の下側の行、すなわち行列1100の4番目の行に相当するQMF係数の実数成分y4は、ブロック1101の上側の行、すなわち、行列1100の1番目の行に相当するQMF係数の実数成分y1と等しい。したがって、係数算出部33は、ブロック1102内の各行に相当するQMF係数の実数成分に、ブロック1101内の対応する行のQMF係数の実数成分を代入する。例えば、N-4の場合、y3=y2、かつy4=y1となる。
また、4番目のブロック1104の各行に相当するQMF係数の値は、3番目のブロック1103の各行に相当するQMF係数の値と上下対称、かつ、符号が反転されている。したがって、係数算出部33は、ブロック1104内の各行に相当するQMF係数の実数成分に、ブロック1103内の対応する行のQMF係数の実数成分の符号を反転した上で代入する例えば、N=4の場合、y8=-y5、かつ、y7=-y6となる。
さらに、IMDCTの基底関数と、IMDSTの基底関数とでは、位相が1/4周期ずれているだけなので、係数算出部33は、8番目のブロック1108内の各行の値を、1番目のブロック1101内の各行の中間演算値を利用して算出できる。N=4の場合、8番目のブロック1108の下側の行、すなわち、行列1100の16番目の行に相当するQMF係数の虚数成分y16は、ブロック1101の上側の行y1の偶数列の要素の総和y1evenから奇数列の要素の総和y1oddを減じた値(y1even-y1odd)となる。同様に、行列1100の15番目の行に相当するQMF係数の虚数成分y15は、ブロック1101の下側の行y2の偶数列の要素の総和y2evenから奇数列の要素の総和y2oddを減じた値(y2even-y2odd)となる。また同様に、係数算出部33は、6番目のブロック1106内の各行に対応するQMF係数の虚数成分を、3番目のブロック1103の各行の中間演算値を利用して算出できる。具体的には、行列1100の12番目の行に相当するQMF係数の虚数成分y12は、ブロック1103の上側の行y5の偶数列の要素の総和y5evenから奇数列の要素の総和y5oddを減じた値(y5even-y5odd)となる。同様に、行列1100の11番目の行に相当するQMF係数の虚数成分y11は、ブロック1103の下側の行y6の偶数列の要素の総和y6evenから奇数列の要素の総和y6oddを減じた値(y6even-y6odd)となる。
また、7番目のブロック1107の各行に相当するQMF係数の値は、8番目のブロック1108の各行に相当するQMF係数の値と上下対称になっている。例えば、N=4の場合、ブロック1107の上側の行、すなわち行列1100の13番目の行に相当するQMF係数の虚数成分y13は、ブロック1108の下側の行、すなわち、行列1100の16番目の行に相当するQMF係数の虚数成分y16と等しい。同様に、ブロック1107の下側の行、すなわち、行列1100の14番目の行に相当するQMF係数の虚数成分y14は、行列1100の15番目の行に相当するQMF係数の虚数成分y15と等しい。
また、5番目のブロック1105の各行に相当するQMF係数の値は、6番目のブロック1106の各行に相当するQMF係数の値と上下対称、かつ、符号が反転されている。したがって、係数算出部33は、ブロック1105内の各行に相当するQMF係数の虚数成分に、ブロック1106内の対応する行のQMF係数の虚数成分の符号を反転した上で代入する例えば、N=4の場合、y9=-y12、かつ、y10=-y11となる。
図12は、変形例として、IMDETの変換行列とMDCT係数の積である行列1200を縦方向に等分割した8個のブロックのうち、5番目のブロックと7番目のブロックについて局所乗算部32により中間演算値が算出されたときのバタフライ演算の説明図である。
この場合には、5番目のブロック1205と7番目のブロック1207は、それぞれ、IMDSTに相当するので、基底関数はサイン関数となる。したがって、N=4の場合、変換行列とMDCT係数列の積である行列のうち、9,10,13,14行目のそれぞれについて、奇数列の要素の総和Σsi,2k*x[2k+1]がyioddとして、局所乗算部32により算出される。同様に、偶数列の要素の総和Σsi,2k+1*x[2(k+1)]がyievenとして、局所乗算部32により算出される。そしてブロック1205とブロック1207の各行については、係数算出部33は、単純に奇数列の要素の総和yioddと偶数列の要素の総和yievenを加算することで、対応するQMF係数の虚数成分yi(i=9,10,13,14)を算出できる。
一方、8番目のブロック1208の各行に相当するQMF係数の値は、7番目のブロック1207の各行に相当するQMF係数の値と上下対称になっている。したがって、例えば、N=4の場合、係数算出部33は、ブロック1208内の各行に相当するQMF係数の虚数成分y15、y16について、それぞれ、y15=y14、y16=y13とする。
また、6番目のブロック1206の各行に相当するQMF係数の値は、5番目のブロック1205の各行に相当するQMF係数の値と上下対称、かつ、符号が反転されている。したがって、例えば、N=4の場合、係数算出部33は、ブロック1206内の各行に相当するQMF係数の虚数成分y11、y12について、それぞれ、y11=-y10、y12=-y9とする。
さらに、IMDCTの基底関数と、IMDSTの基底関数とでは、位相が1/4周期ずれているだけなので、係数算出部33は、2番目のブロック1202内の各行の値を、7番目のブロック1207内の各行の中間演算値を利用して算出できる。N=4の場合、2番目のブロック1202の下側の行、すなわち、行列1200の4番目の行に相当するQMF係数の実数成分y4は、ブロック1207の上側の行y13の奇数列の要素の総和y13oddから偶数列の要素の総和y13evenを減じた値(y13odd-y13even)となる。同様に、行列1200の3番目の行に相当するQMF係数の実数成分y3は、ブロック1207の下側の行y14の奇数列の要素の総和y14oddから偶数列の要素の総和y14evenを減じた値(y14odd-y14even)となる。また同様に、係数算出部33は、4番目のブロック1204内の各行に対応するQMF係数の実数成分を、5番目のブロック1205の各行の中間演算値を利用して算出できる。具体的には、行列1200の7番目の行に相当するQMF係数の実数成分y7は、ブロック1205の下側の行y10の奇数列の要素の総和y10oddから偶数列の要素の総和y10evenを減じた値(y10odd-y10even)となる。同様に、行列1200の8番目の行に相当するQMF係数の実数成分y8は、ブロック1205の上側の行y9の奇数列の要素の総和y9oddから偶数列の要素の総和y9evenを減じた値(y9odd-y9even)となる。
また、1番目のブロック1201の各行に相当するQMF係数の値は、2番目のブロック1202の各行に相当するQMF係数の値と上下対称になっている。したがって、例えば、N=4の場合、係数算出部33は、ブロック1201内の各行に相当するQMF係数の実数成分y1、y2について、それぞれ、y1=y4、y2=y3とする。
また、3番目のブロック1203の各行に相当するQMF係数の値は、4番目のブロック1204の各行に相当するQMF係数の値と上下対称、かつ、符号が反転されている。したがって、例えば、N=4の場合、係数算出部33は、ブロック1203内の各行に相当するQMF係数の実数成分y5、y6について、それぞれ、y5=-y8、y6=-y7とする。
上記のように、QMF係数列の前半区間の実数成分と後半区間の虚数成分を算出するためには、それら区間のうち、何れか一方のさらに前半または後半について、基底関数と対応するMDF係数の積が計算されればよい。同様に、QMF係数列の後半区間の実数成分と前半区間の虚数成分を算出するためには、それら区間のうち、何れか一方のさらに前半または後半について、基底関数と対応するMDF係数の積が計算されればよい。
係数算出部33は、QMF係数の実数成分及び虚数成分を係数調整部23へ出力する。
係数調整部23は、逆修正離散指数変換部22から出力された、残差信号のQMF係数のそれぞれの実数成分と虚数成分とを合成することで、残差信号の各QMF係数を得る。具体的には、係数調整部23は、次式に従って、QMF係数を算出する。
Figure 2014194633
ここで、X[n,f]は、MDCT係数をバタフライIMDCTして得られるQMF係数の実数成分であり、Y[n,f]は、MDCT係数をバタフライIMDSTして得られるQMF係数の虚数成分である。そしてZ[n,f]は、得られたQMF係数である。ただし、fは、バタフライIMDCT及びバタフライIMDSTが実行される周波数帯域を表す。
図13は、直交変換部16により実行される直交変換処理の動作フローチャートである。なお、直交変換部16は、個々の周波数帯域に相当する適用区間ごとに、以下の動作フローに従って直交変換処理を実行する。
直交変換部16の窓処理部21は、残差信号のMDCT係数に対して窓関数及びゲインを乗じる(ステップS101)。そして窓処理部21は、窓関数及びゲインが乗じられたMDCT係数を直交変換部16の逆修正離散指数変換部22の局所乗算部32へ出力する。
局所乗算部32は、適用区間の長さに応じて、QMF係数を算出するための基底関数の値が対称となるようにQMF係数列を分割したサブ区間のうちの着目するサブ区間に含まれる基底関数値を格納するテーブルを記憶部31から読み込む(ステップS102)。そして局所乗算部32は、着目するサブ区間に含まれるQMF係数の実数成分に対応する奇数列の基底関数と対応するMDCT係数の積の総和と、偶数列の基底関数と対応するMDCT係数の積の総和とをそれぞれ算出する。そして局所乗算部32は、その計算結果を中間演算値として記憶部31に記憶する(ステップS103)。
係数算出部33は、着目するサブ区間について、奇数列の基底関数と対応するMDCT係数の積の総和と、偶数列の基底関数と対応するMDCT係数の積の総和との和を、そのサブ区間に含まれるQMF係数の実数成分として算出する(ステップS104)。さらに、係数算出部33は、着目するサブ区間以外のサブ区間について、記憶部31に記憶されている中間演算値を用いて、基底関数の対称性を利用したバタフライ演算により、QMF係数の実数成分を算出する(ステップS105)。また係数算出部33は、着目するサブ区間の中間演算値から、IDMCTの基底関数とIDMSTの基底関数の周期のずれを補償するとともにサブ区間同士の基底関数の対称性を利用して各サブ区間のQMF係数の虚数成分を算出する(ステップS106)。
直交変換部16の係数調整部23は、QMF係数の実数成分と虚数成分を合成することでQMF係数を得る(ステップS107)。そして直交変換部16は、直交変換処理を終了する。なお、局所乗算部32は、ステップS103にて、着目するサブ区間に含まれるQMF係数の虚数成分に対応する奇数列の基底関数と対応するMDCT係数の積の総和と、偶数列の基底関数と対応するMDCT係数の積の総和とを、中間演算値として算出してもよい。この場合、係数算出部33は、ステップS104及びS105では、各サブ区間に含まれるQMF係数の虚数成分を算出し、ステップS106では、各サブ区間に含まれるQMF係数の実数成分を算出する。
図14は、オーディオ復号装置1により実行されるオーディオ復号処理の動作フローチャートである。オーディオ復号装置1は、フレームごとに、下記の動作フローチャートに従ってオーディオ信号を再生する。
分離部11は、符号化データストリームからAAC符号、SBR符号といった主信号符号、空間情報符号及び残差信号符号を取り出す(ステップS201)。
主信号復号部12は、分離部11から受け取った主信号符号を復号することにより、ステレオ信号を再生する(ステップS202)。時間周波数変換部13は、得られたステレオ信号に対してQMFフィルタバンクを適用することにより、時間周波数領域のQMF係数に変換する(ステップS203)。
一方、空間情報復号部14は、分離部11から受け取った空間情報符号を復号することにより空間情報を再生する(ステップS204)。そして空間情報復号部14は、得られた空間情報をアップミックス部17へ出力する。
また、残差信号復号部15は、分離部11から受け取った残差信号符号を復号することにより、残差信号のMDCT係数を再生する(ステップS205)。そして直交変換部16は、残差信号のMDCT係数に対して、基底関数の対称性に基づいて一部のQMF係数の中間演算値を他のQMF係数の算出に利用することによってバタフライIMDETを実行することにより、残差信号のQMF係数を算出する(ステップS206)。
アップミックス部17は、ステレオ信号のQMF係数及び残差信号のQMF係数を空間情報を用いてアップミックスすることにより、元のオーディオ信号の各チャネルのQMF係数を再生する(ステップS207)。
周波数時間変換部18は、各チャネルのQMF係数を周波数時間変換して各チャネルのオーディオ信号を再生する(ステップS208)。
そしてオーディオ復号装置は、オーディオ復号処理を終了する。
以上に説明してきたように、本実施形態による直交変換装置は、MDCT係数をQMF係数に変換するためのバタフライIMDETの演算量を、基底関数の対称性を利用することで、1/4に削減できる。そのため、この直交変換装置を含むオーディオ復号装置は、残差信号のMDCT係数をQMF係数に変換するための演算量を削減できる。
次に、直交変換装置の第2の実施形態について説明する。
IMDETを何の高速化手法も利用せずに実行する場合、IMDETの演算量は、適用区間に含まれるMDCT係数の数の2乗のオーダーとなる。そのため、上記の実施形態でも、IMDETの演算量は1/4となるものの、演算量のオーダー自体は、適用区間に含まれるMDCT係数の数の2乗のオーダーとなる。
一方、高速フーリエ変換(Fast Fourier Transform, FFT)を利用してIMDCT及びIMDSTを実行する方法が知られている。そのような方法は、例えば、Rolf Gluth、「REGULAR FFT-RELATED TRANSFORM KERNELS FOR DCT/DST-BASED POLYPHASE FILTER BANKS」、IEEE Acoustics, Speech, and Signal Processing, ICASSP-91、1991年、vol.3、p.2205-2208に開示されている。この文献に記載された方法では、入力される信号列に対して複素平面内での回転といった事前処理及び事後処理とともにFFTを実行することで、IMDCT及びIMDSTが実現できる。FFTの演算量は、入力される信号点の数Nが2のべき乗である場合、NlogNのオーダーとなる。したがって、IMDETの適用区間に含まれるMDCT係数の数が2のべき乗であり、かつ、そのMDCT係数の数が多いほど、FFTを利用してIMDETを実行することで演算量が削減される。
そこで、第2の実施形態による直交変換装置は、IMDET演算の適用区間の長さに応じて、IMDET演算を実行する方法を、上記の実施形態による方法か、FFTを利用した方法かで切り替える。
図15は、第2の実施形態による直交変換装置16’の構成図である。直交変換装置16’は、窓処理部21と、切り替え部24と、逆修正離散指数変換部22と、第2逆修正離散指数変換部25と、係数調整部23とを有する。図15に示された直交変換装置16’の各構成要素には、図7に示された第1の実施形態による直交変換装置16の対応する構成要素の参照番号と同じ参照番号を付した。第2の実施形態による直交変換装置16’は、第1の実施形態による直交変換装置16と比較して、切り替え部24及び第2逆修正離散指数変換部25を有する点で異なる。そこで以下では、切り替え部24及び第2逆修正離散指数変換部25について説明する。
切り替え部24は、IMDETの適用区間の長さに応じて、基底関数の対称性を利用する逆修正離散指数変換部22及びFFTを利用する第2逆修正離散指数変換部25のうちの何れかを選択する。
図16は、切り替え部24による切り替え処理の動作フローチャートである。
切り替え部24は、IMDETの適用区間に含まれるMDCT係数の数Mが8以上か否か判定する(ステップS301)。MDCT係数の数Mが8以上である場合(ステップS301−Yes)、切り替え部24は、MDCT係数の数Mが2のべき乗であるか否か判定する(ステップS302)。MDCT係数の数Mが2のべき乗である場合(ステップS302−Yes)、切り替え部24は、FFTを利用する第2逆修正離散指数変換部25にMDCT係数を入力する(ステップS303)。
一方、MDCT係数の数Mが2のべき乗でないか(ステップS302−No)、その数Mが8未満である場合(ステップS301−No)、切り替え部24は、基底関数の対称性を利用する逆修正離散指数変換部22にMDCT係数を入力する(ステップS304)。ステップS303またはS304の後、切り替え部24は、切り替え処理を終了する。
第2逆修正離散指数変換部25は、FFTを利用して、入力されたMDCT係数に対してIMDETを実行する。
図17は、第2逆修正離散指数変換部25の構成図である。第2逆修正離散指数変換部25は、入れ替え部41と、反転部42と、バタフライ逆コサイン変換部43と、バタフライ逆サイン変換部44とを有する。本実施形態では、バタフライ逆コサイン変換部43及びバタフライ逆サイン変換部44は、演算量を削減するために、FFTを利用してIMDCT演算及びIMDST演算を実行する方法を採用する。
バタフライIMDCT演算及びバタフライIMDST演算と、通常のIMDCT演算及び通常のIMDST演算には、以下に説明するような相違点が存在する。
一般に、バタフライIMDCT演算は、次式で表される。
Figure 2014194633
一方、通常のIMDCT演算は、次式で表される。
Figure 2014194633
ただし、x[k](k=0,1,2,…,2N-1)は、MDCT係数である。(5)式及び(6)式から明らかなように、バタフライIMDCT演算では、適用区間あたりのMDCT係数の数が通常のIMDCT演算の2倍となる。また、基底コサイン関数の位相が(n+n0)πだけ異なる。同様に、バタフライIMDST演算と通常のIMDST演算に関しても、適用区間あたりのMDCT係数の数と基底サイン関数の位相が異なる。そのため、通常のIMDCT演算及びIMDST演算においてFFTを利用する方法を、バタフライIMDCT演算及びIMDST演算にそのまま適用すると、再生される原信号(本実施形態では残差信号)に疑似信号成分が含まれるようになり、原信号が劣化する。
そこで第2逆修正離散指数変換部25は、IMDCT及びIMDSTを実行する前に、適用区間内のMDCT係数の数及び基底関数の位相を、通常のIMDCT演算またはIMDST演算における係数の数及び基底関数の位相と一致させるよう、MDCT係数を並び替え、符号を反転する。
図18を参照しつつ、バタフライIMDCTの基底コサイン関数と通常のIMDCTの基底コサイン関数の関係について説明する。図18において、横軸は、MDCT係数の周波数kを表す。そしてグラフ1801は、通常のIMDCTの基底コサイン関数c1[k]を表し、グラフ1802は、バタフライIMDCTの基底コサイン関数c2[k]を表す。関数c1[k]、c2[k]は、それぞれ、(5)式及び(6)式における、三角関数の部分に相当するので次式で表される。
Figure 2014194633
図18及び(7)式、(8)式から明らかなように、関数c1[k]と関数c2[k]とでは、kの値がNに相当する分だけ位相がずれている。すなわち、区間[0,N-1]における、バタフライIMDCTの基底コサイン関数c2[k]の値は、区間[N,2N-1]における、通常のバタフライIMDCTの基底コサイン関数c1[k]の値と等しい。
また、基底コサイン関数c1[k]、c2[k]とも、kの値が2Nだけ異なるときのその関数の値c1[k-2N]、c2[k-2N]と比較して、絶対値が等しく、かつ、符号が反転する。すなわち、基底コサイン関数c1[k]とc2[k]の間には、以下の関係が成立する。
Figure 2014194633
したがって、以下の式が成立する。
Figure 2014194633
(10)式に示されるように、区間内の前半のMDCT係数x[k](k=0,1,...,N-1)と後半のMDCT係数x[k](k=N,N+1,...,2N-1)を入れ替えることにより、入れ替え後の前半部分に対しては、通常のIMDCT演算の基底コサイン関数c1[k]が適用可能となる。一方、入れ替え後の後半部分に含まれる各MDCT係数については、符号を反転した上で、通常のIMDCT演算の基底コサイン関数c1[k]が適用可能となる。そして、前半部分と後半部分の長さは、通常のIMDCT演算が適用される区間の長さと等しい。したがって、前半部分と後半部分のそれぞれに対して、通常のIMDCT演算が適用できる。
また、バタフライIMDST演算の基底サイン関数と、通常のIMDST演算の基底サイン関数についても同様の関係が成立する。したがって、バタフライIMDST演算についても、適用区間内の前半のMDCT係数と後半のMDCT係数の順序を入れ替え、入れ替え後の前半のMDCT係数の符号を反転することで、前半部分と後半部分のそれぞれに対して、通常のIMDST演算が適用可能となる。
そこで、入れ替え部41は、適用区間内の前半のMDCT係数と後半のMDCT係数を入れ替える。図19を参照しつつ、入れ替え部41の処理を説明する。入れ替え部41は、窓関数及びゲインが乗算されたMDCT係数x[k]を、図19の矢印で示されるように前半と後半の順序を入れ替えることで、入れ替え後のMDCT係数x'[k]を求める。この入れ替えの処理は、次式で表される。
Figure 2014194633
入れ替え部41は、入れ替え後のMDCT係数x'[k]の前半部分、すなわち、元のMDCT係数の後半部分をバタフライ逆コサイン変換部43の逆コサイン変換部51−1と、バタフライ逆サイン変換部44の逆サイン変換部53−1へ出力する。一方、入れ替え部41は、入れ替え後のMDCT係数x'[k]の後半部分、すなわち、元のMDCT係数の前半部分を反転部42へ出力する。
反転部42は、入れ替え後のMDCT係数x'[k]の後半部分の符号を反転する。そして反転部42は、符号反転後のMDCT係数x'[k]をバタフライ逆コサイン変換部43の逆コサイン変換部51−2と、バタフライ逆サイン変換部44の逆サイン変換部53−2へ出力する。
バタフライ逆コサイン変換部43は、バタフライIMDCT演算をそのまま実行する代わりに、適用区間内のMDCT係数の順序の入れ替え等を行った上で、FFTを利用した通常のIMDCT演算を実行することで、QMF係数の実数成分を算出する。再度図17を参照すると、バタフライ逆コサイン変換部43は、逆コサイン変換部51−1、51−2と、加算部52とを有する。
同様に、バタフライ逆サイン変換部44は、適用区間内のMDCT係数の順序の入れ替え等を行った上で、FFTを利用した通常のIMDST演算を実行することで、QMF係数の虚数成分を算出する。そのために、バタフライ逆サイン変換部44は、逆サイン変換部53−1、53−2と、加算部54とを有する。
なお、以下では、バタフライ逆コサイン変換部43についてのみ説明する。バタフライ逆サイン変換部44は、変換に用いられる基底関数をコサイン関数からサイン関数に変更するだけで、バタフライ逆コサイン変換部43と同様に、MDCT係数に対してFFTを利用したIMDST演算を行うことでバタフライIMDST演算を実行できる。
逆コサイン変換部51−1は、(10)式の右辺の第1項に対するIMDCT演算を、FFTを利用して実行する。一方、逆コサイン変換部51−2は、(10)式の右辺の第2項に対するIMDCT演算を、FFTを利用して実行する。逆コサイン変換部51−1、51−2は、例えば、上述した、Rolf Gluth、「REGULAR FFT-RELATED TRANSFORM KERNELS FOR DCT/DST-BASED POLYPHASE FILTER BANKS」、IEEE Acoustics, Speech, and Signal Processing, ICASSP-91、1991年、vol.3、p.2205-2208に開示された手法を利用する。なお、逆コサイン変換部51−1と51−2は、扱うデータ以外は同一なので、以下では、逆コサイン変換部51−1について説明する。
図20は、逆コサイン変換部51−1の構成図である。逆コサイン変換部51−1は、上記の文献に開示された手法に従って、事前回転部61と、高速フーリエ変換部62と、事後回転部63とを有する。
事前回転部61は、基底の三角関数の対称性を利用して計算範囲を狭くするために、次式に従って入力されたMDCT係数x'[k]を1/4ずつ合成することにより、合成関数f[k]を得る。
Figure 2014194633
そして事前回転部61は、次式に従って、合成関数f[k]を複素平面において1/8回転させる。
Figure 2014194633
事前回転部61は、回転された合成関数f'[k]を高速フーリエ変換部62へ出力する。
高速フーリエ変換部62は、合成関数f'[k]に対して、FFTを実行する。なお、高速フーリエ変換部62は、FFTとして知られている様々な演算方法を適用できる。そして高速フーリエ変換部62は、FFTを行うことによって得られた係数F[n]を事後回転部63へ出力する。
事後回転部63は、次式に従って、係数F[n]を、事前回転部61による回転方向とは逆向きに1/8回転させることで係数F'[n]を算出する。
Figure 2014194633
事後回転部63は、次式に従って、複素平面上の係数F'[n]を実数平面上の係数F''[n]に変換する。
Figure 2014194633
ただし、関数Re(x)は、変数xの実数成分を出力する関数であり、関数Im(x)は、変数xの虚数成分を出力する関数である。事後回転部63は、通常のIMDCT用の窓関数、例えば、カイザー・ベッセル窓とゲイン(1/N)1/2を係数F''[n]に乗じることで、MDCT係数x'[k]に対してIMDCTを行って得られる係数と同等の係数を得る。
加算部52は、逆コサイン変換部51−1から出力された係数に、逆コサイン変換部51−2から出力された係数を加算する。これにより、(10)式の右辺の計算が完了するので、MDCT係数に対するバタフライIMDCTが完了し、QMF係数の実数成分が得られる。加算部52は、得られたQMF係数の実数成分を係数調整部23へ出力する。
バタフライ逆サイン変換部44も、バタフライ逆コサイン変換部43と同様にFFTを利用してIMDSTを実行することで、QMF係数の虚数成分を算出する。そしてバタフライ逆サイン変換部44は、得られたQMF係数の虚数成分を係数調整部23へ出力する。
係数調整部23は、第2逆修正離散指数変換部25からQMF係数の実数成分と虚数成分を受け取った場合も、(4)式に従ってその実数成分と虚数成分を合成することで、QMF係数を算出できる。
以下のテーブルは、本実施形態による、一つの適用区間に含まれるMDCT係数の数M(=2N)に対する、IMDET1回あたりの演算量を示すテーブルである。
Figure 2014194633
テーブルに示されるように、FFTを利用する第2逆修正離散指数変換部25の処理では、バタフライIMDCT1回あたりの演算量は、FFTの演算量と同様に、MlogMのオーダーとなる。これに対して、基底関数の対称性を利用する逆修正離散指数変換部22の処理では、IMDET1回あたりの演算量は、M2のオーダーとなる。
図21は、適用区間に含まれるMDCT係数の数Mに対する、基底関数の対称性を利用するIMDETの演算量とFFTを利用するIMDETの演算量の関係を表すグラフである。グラフ2100は、MDCT係数の数Mと基底関数の対称性を利用したIMDETの乗算回数の関係を表し、グラフ2110は、MDCT係数の数MとFFTを利用したIMDETの乗算回数の関係を表す。図21から明らかなように、Mが8よりも小さい場合には、基底関数の対称性を利用してIMDETを実行する方が、FFTを利用してIMDETを実行するよりも演算量が少なくて済む。これは、FFTを利用する手法では、事前処理と事後処理の演算量の負荷が相対的に大きくなるためである。そのため、本実施形態では、切り替え部24により、Mが8未満のときまたはMが2のべき乗でないときには基底関数の対称性を利用してIMDETを実行するように、逆修正離散指数変換部22が選択される。特に、残差信号に適用されるAAC符号化方式などでは、アタック音に対して短いフレームが適用されるので、IMDETの適用区間に含まれるMDCT係数の数が8未満となることがある。そのため、本実施形態による直交変換装置及びその直交変換装置を利用するオーディオ復号装置は、残差信号に短いフレームが適用されたときなお、FFTを利用してIMDETを実行するよりも演算量を削減できる。一方、この直交変換装置及びオーディオ復号装置は、比較的長いフレームで残差信号がAAC符号化されているような場合には、FFTを利用してIMDETを実行することで、IMDETの演算量を削減できる。
なお、変形例によれば、局所乗算部32は、中間演算値として、QMF係数列の着目するサブ区間に含まれるQMF係数の実数成分または虚数成分に対応する、各基底関数値と対応意するMDF係数の積のみを算出してもよい。この場合には、係数算出部33が、各QMF係数について、奇数列の基底関数値とMDF係数の積の総和と、偶数列の基底関数値とMDF係数の積の総和を算出すればよい。この変形例でも、基底関数値とMDF係数の積の演算回数を通常のIMDETにおける基底関数値とMDF係数の積の演算回数の1/4にできるので、IMDET全体の演算量を削減できる。
上記の実施形態または変形例による直交変換装置が有する各部の機能をコンピュータに実現させるコンピュータプログラムは、半導体メモリ、磁気記録媒体または光記録媒体などの記録媒体に記憶された形で提供されてもよい。同様に、上記の実施形態または変形例によるオーディオ復号装置が有する各部の機能をコンピュータに実現させるコンピュータプログラムは、半導体メモリ、磁気記録媒体または光記録媒体などの記録媒体に記憶された形で提供されてもよい。ただし、そのような記録媒体には、搬送波は含まれない。
図22は、上記の実施形態またはその変形例によるオーディオ復号装置の各部の機能を実現するコンピュータプログラムが動作することにより、オーディオ復号装置として動作するコンピュータの構成図である。
コンピュータ100は、ユーザインターフェース部101と、通信インターフェース部102と、記憶部103と、記憶媒体アクセス装置104と、プロセッサ105と、オーディオインターフェース部106とを有する。プロセッサ105は、ユーザインターフェース部101、通信インターフェース部102、記憶部103、記憶媒体アクセス装置104及びオーディオインターフェース部106と、例えば、バスを介して接続される。
ユーザインターフェース部101は、例えば、キーボードとマウスなどの入力装置と、液晶ディスプレイといった表示装置とを有する。または、ユーザインターフェース部101は、タッチパネルディスプレイといった、入力装置と表示装置とが一体化された装置を有してもよい。そしてユーザインターフェース部101は、例えば、ユーザの操作に応じて、復号するオーディオデータを選択する操作信号をプロセッサ105へ出力する。
通信インターフェース部102は、コンピュータ100を、オーディオデータを符号化する装置、例えば、ビデオカメラと接続するための通信インターフェース及びその制御回路を有してもよい。そのような通信インターフェースは、例えば、Universal Serial Bus(ユニバーサル・シリアル・バス、USB)とすることができる。
さらに、通信インターフェース部102は、イーサネット(登録商標)などの通信規格に従った通信ネットワークに接続するための通信インターフェース及びその制御回路を有してもよい。
この場合には、通信インターフェース部102は、通信ネットワークに接続された他の機器から、復号する符号化オーディオデータを取得し、そのデータをプロセッサ105へ渡す。
記憶部103は、例えば、読み書き可能な半導体メモリと読み出し専用の半導体メモリとを有する。そして記憶部103は、プロセッサ105上で実行される、オーディオ復号処理を実行するためのコンピュータプログラム、及びこれらの処理の途中または結果として生成されるデータを記憶する。
記憶媒体アクセス装置104は、例えば、磁気ディスク、半導体メモリカード及び光記憶媒体といった記憶媒体108にアクセスする装置である。記憶媒体アクセス装置104は、例えば、記憶媒体108に記憶されたプロセッサ105上で実行される、オーディオ復号処理用のコンピュータプログラムを読み込み、プロセッサ105に渡す。
プロセッサ105は、上記の実施形態または変形例によるオーディオ復号処理用コンピュータプログラムを実行することにより、符号化オーディオデータを復号する。そしてプロセッサ105は、復号されたオーディオデータをオーディオインターフェース部106を介してスピーカ107へ出力する。
上記の実施形態またはその変形例による直交変換装置は、MPEG Surround方式に従って符号化されたオーディオ信号の復号以外の用途に利用されてもよい。上記の実施形態またはその変形例による直交変換装置は、MDCT係数をQMF係数へ変換することが求められる様々な装置に適用できる。
また、上記の実施形態または変形例によるオーディオ復号装置は、コンピュータ、ビデオ信号の録画再生機など、符号化されたオーディオ信号を再生するために利用される各種の機器に実装される。
ここに挙げられた全ての例及び特定の用語は、読者が、本発明及び当該技術の促進に対する本発明者により寄与された概念を理解することを助ける、教示的な目的において意図されたものであり、本発明の優位性及び劣等性を示すことに関する、本明細書の如何なる例の構成、そのような特定の挙げられた例及び条件に限定しないように解釈されるべきものである。本発明の実施形態は詳細に説明されているが、本発明の精神及び範囲から外れることなく、様々な変更、置換及び修正をこれに加えることが可能であることを理解されたい。
1 オーディオ復号装置
11 分離部
12 主信号復号部
13 時間周波数変換部
14 空間情報復号部
15 残差信号復号部
16、16’ 直交変換部(直交変換装置)
17 アップミックス部
18 周波数時間変換部
21 窓処理部
22 逆修正離散指数変換部
23 係数調整部
24 切り替え部
25 第2逆修正離散指数変換部
31 記憶部
32 局所乗算部
33 係数算出部
41 入れ替え部
42 反転部
43 バタフライ逆コサイン変換部
44 バタフライ逆サイン変換部
51−1、51−2 逆コサイン変換部
53−1、53−2 逆サイン変換部
52、54 加算部
61 事前回転部
62 高速フーリエ変換部
63 事後回転部
100 コンピュータ
101 ユーザインターフェース部
102 通信インターフェース部
103 記憶部
104 記憶媒体アクセス装置
105 プロセッサ
106 オーディオインターフェース部
107 スピーカ
108 記憶媒体

Claims (12)

  1. 所定の区間に含まれる複数の修正離散コサイン変換係数を複数の直交ミラーフィルタ係数を含む係数列に変換する直交変換装置であって、
    前記係数列を算出するために用いられる基底関数の値が対称となるように前記係数列が分割された複数のサブ区間のうちの第1のサブ区間に含まれる前記直交ミラーフィルタ係数の実数成分及び虚数成分のうちの一方を、当該第1のサブ区間に対応する前記基底関数と前記複数の修正離散コサイン変換係数の積和演算により算出するとともに、当該第1のサブ区間に含まれる前記直交ミラーフィルタ係数の実数成分及び虚数成分のうちの他方、及び前記複数のサブ区間のうちの他のサブ区間に含まれる前記直交ミラーフィルタ係数の実数成分及び虚数成分を、前記積和演算により算出される演算値を利用したバタフライ演算により算出する逆指数変換部と、
    前記複数の直交ミラーフィルタ係数のそれぞれについて、前記実数成分と前記虚数成分を合成することで当該直交ミラーフィルタ係数を算出する係数調整部と、
    を有する直交変換装置。
  2. 前記逆指数変換部は、
    前記第1のサブ区間に対応する前記基底関数と前記複数の修正離散コサイン変換係数の積和演算により前記演算値を算出する局所乗算部と、
    前記演算値を記憶する記憶部と、
    前記記憶部から前記演算値を読み込んで、前記複数のサブ区間のそれぞれごとに、当該サブ区間に含まれる前記直交ミラーフィルタ係数の実数成分及び虚数成分を算出する係数算出部と、を有する請求項1に記載の直交変換装置。
  3. 前記局所乗算部は、奇数番目の修正離散コサイン変換係数と前記第1のサブ区間に含まれる前記直交ミラーフィルタ係数の実数成分に対応する前記基底関数のうちの奇数番目の基底関数値との積の総和、及び、偶数番目の修正離散コサイン変換係数と前記第1のサブ区間に含まれる前記直交ミラーフィルタ係数の実数成分に対応する前記基底関数のうちの偶数番目の基底関数値との積の総和を、前記演算値として算出する、請求項2に記載の直交変換装置。
  4. 前記係数算出部は、前記複数のサブ区間のうち、前記基底関数の値が前記第1のサブ区間に対応する前記基底関数の値と対称となるサブ区間に含まれる各直交ミラーフィルタ係数の実数成分を、前記第1のサブ区間に含まれる各直交ミラーフィルタ係数の実数成分の順序を反転させることで算出する、請求項3に記載の直交変換装置。
  5. 前記第1のサブ区間は、前記係数列の前半のうちの前半及び後半の何れか一方と、前記係数列の後半のうちの前半及び後半の何れか一方を含む、請求項3または4に記載の直交変換装置。
  6. 前記係数算出部は、前記係数列の前半内の前半及び後半のうちの前記第1のサブ区間に含まれない方についての前記直交ミラーフィルタ係数の虚数成分を、前記係数列の後半内の前半及び後半のうちの前記第1のサブ区間に含まれる方について算出された前記演算値に対して、前記直交ミラーフィルタ係数の実数成分に対する前記基底関数と前記直交ミラーフィルタ係数の虚数成分に対する前記基底関数間の位相のずれを補償することで算出する、請求項5に記載の直交変換装置。
  7. 前記複数の修正離散コサイン変換係数に対して高速フーリエ変換を利用した逆修正離散コサイン変換を実行することで前記複数の直交ミラーフィルタ係数の実数成分を算出するとともに、前記複数の修正離散コサイン変換係数に対して高速フーリエ変換を利用した逆修正離散サイン変換を実行することで前記複数の直交ミラーフィルタ係数の虚数成分を算出する第2の逆指数変換部と、
    前記所定区間に含まれる前記修正離散コサイン変換係数の数に応じて、前記逆指数変換部及び前記第2の逆指数変換部の何れか一方に前記複数の直交ミラーフィルタ係数の実数成分及び虚数成分を算出させる切り替え部と、
    をさらに有する請求項1〜6の何れか一項に記載の直交変換装置。
  8. 前記切り替え部は、前記所定区間に含まれる前記修正離散コサイン変換係数の数が8よりも小さいかまたは当該数が2のべき乗でない場合、前記逆指数変換部に前記複数の直交ミラーフィルタ係数の実数成分及び虚数成分を算出させ、一方、前記所定区間に含まれる前記修正離散コサイン変換係数の数が8以上であり、かつ、当該数が2のべき乗である場合、前記第2の逆指数変換部に前記複数の直交ミラーフィルタ係数の実数成分及び虚数成分を算出させる、請求項7に記載の直交変換装置。
  9. 前記第2の逆指数変換部は、
    前記所定区間の前半に含まれる前記修正離散コサイン変換係数と前記所定区間の後半に含まれる前記修正離散コサイン変換係数の順序を入れ替える入れ替え部と、
    前記順序の入れ替え後における前記所定区間の後半の前記修正離散コサイン変換係数の符号を反転する反転部と、
    前記順序の入れ替え後における前記所定区間の前半の前記修正離散コサイン変換係数に対して高速フーリエ変換を利用した逆修正離散コサイン変換を実行することで第1の係数を算出する第1のサブ逆コサイン変換部と、
    前記順序の入れ替え後における前記所定区間の後半の符号反転された前記修正離散コサイン変換係数に対して高速フーリエ変換を利用した逆修正離散コサイン変換を実行することで第2の係数を算出する第2のサブ逆コサイン変換部と、
    前記第1の係数と前記第2の係数を加算することで前記直交ミラーフィルタ係数の実数成分を算出する加算部と、
    を有する請求項7または8に記載の直交変換装置。
  10. 所定の区間に含まれる複数の修正離散コサイン変換係数を複数の直交ミラーフィルタ係数を含む係数列に変換する直交変換方法であって、
    前記係数列を算出するために用いられる基底関数の値が対称となるように前記係数列が分割された複数のサブ区間のうちの第1のサブ区間に含まれる前記直交ミラーフィルタ係数の実数成分及び虚数成分のうちの一方を、当該第1のサブ区間に対応する前記基底関数と前記複数の修正離散コサイン変換係数の積和演算により算出し、
    当該第1のサブ区間に含まれる前記直交ミラーフィルタ係数の実数成分及び虚数成分のうちの他方、及び前記複数のサブ区間のうちの他のサブ区間に含まれる前記直交ミラーフィルタ係数の実数成分及び虚数成分を、前記積和演算により算出される演算値を利用したバタフライ演算により算出し、
    前記複数の直交ミラーフィルタ係数のそれぞれについて、前記実数成分と前記虚数成分を合成することで当該直交ミラーフィルタ係数を算出する、
    ことを含む直交変換方法。
  11. 所定の区間に含まれる複数の修正離散コサイン変換係数を複数の直交ミラーフィルタ係数を含む係数列に変換することをコンピュータに実行させるための直交変換用コンピュータプログラムであって、
    前記係数列を算出するために用いられる基底関数の値が対称となるように前記係数列が分割された複数のサブ区間のうちの第1のサブ区間に含まれる前記直交ミラーフィルタ係数の実数成分及び虚数成分のうちの一方を、当該第1のサブ区間に対応する前記基底関数と前記複数の修正離散コサイン変換係数の積和演算により算出し、
    当該第1のサブ区間に含まれる前記直交ミラーフィルタ係数の実数成分及び虚数成分のうちの他方、及び前記複数のサブ区間のうちの他のサブ区間に含まれる前記直交ミラーフィルタ係数の実数成分及び虚数成分を、前記積和演算により算出される演算値を利用したバタフライ演算により算出し、
    前記複数の直交ミラーフィルタ係数のそれぞれについて、前記実数成分と前記虚数成分を合成することで当該直交ミラーフィルタ係数を算出する、
    ことをコンピュータに実行させるための直交変換用コンピュータプログラム。
  12. 複数のチャネルを持つオーディオ信号の各チャネルの信号をダウンミックスすることにより生成される各チャネルの主成分を表す主信号を符号化した主信号符号と、前記主信号と直交する残差信号に対して修正離散コサイン変換処理を行って得られた係数を符号化した残差信号符号と、チャネル間の類似度及び強度差を表す空間情報を符号化した空間情報符号とを含むデータストリームから前記オーディオ信号を復号するオーディオ復号装置であって、
    前記データストリームから前記主信号符号、前記残差信号符号及び前記空間情報を符号を分離する分離部と、
    前記主信号符号を復号することにより時間領域の前記主信号を再生する主信号復号部と、
    前記時間領域の前記主信号に対して直交ミラーフィルタ処理を行うことにより、時間周波数領域の直交ミラーフィルタ係数に変換する直交ミラーフィルタ処理部と、
    前記空間情報符号を復号することにより前記空間情報を再生する空間情報復号部と、
    前記残差信号符号を復号することにより、前記残差信号の修正離散コサイン変換係数を再生する残差信号復号部と、
    周波数帯域全体を区切る、半分ずつ重なるように設定された複数の所定の区間のそれぞれごとに、当該所定の区間に含まれる前記残差信号の修正離散コサイン変換係数を時間周波数領域の複数の直交ミラーフィルタ係数を含む係数列に変換する直交変換部と、
    前記主信号の直交ミラーフィルタ係数と、前記残差信号の直交ミラーフィルタ係数とを、前記空間情報を用いてアップミックスすることにより、前記オーディオ信号の各チャネルの直交ミラーフィルタ係数を算出するアップミックス部と、
    前記各チャネルの直交ミラーフィルタ係数に対して逆直交ミラーフィルタ処理を行うことにより、前記オーディオ信号の各チャネルの信号を再生する逆直交ミラーフィルタ処理部とを有し、
    前記直交変換部は、
    前記係数列を算出するために用いられる基底関数の値が対称となるように前記係数列が分割された複数のサブ区間のうちの第1のサブ区間に含まれる前記残差信号の前記直交ミラーフィルタ係数の実数成分及び虚数成分のうちの一方を、当該第1のサブ区間に対応する前記基底関数と前記複数の修正離散コサイン変換係数の積和演算により算出するとともに、当該第1のサブ区間に含まれる前記残差信号の前記直交ミラーフィルタ係数の実数成分及び虚数成分のうちの他方、及び前記複数のサブ区間のうちの他のサブ区間に含まれる前記残差信号の前記直交ミラーフィルタ係数の実数成分及び虚数成分を、前記積和演算により算出される演算値を利用したバタフライ演算により算出する逆指数変換部と、
    前記残差信号の前記複数の直交ミラーフィルタ係数のそれぞれについて、前記実数成分と前記虚数成分を合成することで当該直交ミラーフィルタ係数を算出する係数調整部と、
    を有するオーディオ復号装置。
JP2013070436A 2013-03-28 2013-03-28 直交変換装置、直交変換方法及び直交変換用コンピュータプログラムならびにオーディオ復号装置 Expired - Fee Related JP6089878B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2013070436A JP6089878B2 (ja) 2013-03-28 2013-03-28 直交変換装置、直交変換方法及び直交変換用コンピュータプログラムならびにオーディオ復号装置
EP14156122.5A EP2784691B1 (en) 2013-03-28 2014-02-21 Audio decoding apparatus, method and computer program
US14/189,148 US9257129B2 (en) 2013-03-28 2014-02-25 Orthogonal transform apparatus, orthogonal transform method, orthogonal transform computer program, and audio decoding apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013070436A JP6089878B2 (ja) 2013-03-28 2013-03-28 直交変換装置、直交変換方法及び直交変換用コンピュータプログラムならびにオーディオ復号装置

Publications (2)

Publication Number Publication Date
JP2014194633A true JP2014194633A (ja) 2014-10-09
JP6089878B2 JP6089878B2 (ja) 2017-03-08

Family

ID=50241081

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013070436A Expired - Fee Related JP6089878B2 (ja) 2013-03-28 2013-03-28 直交変換装置、直交変換方法及び直交変換用コンピュータプログラムならびにオーディオ復号装置

Country Status (3)

Country Link
US (1) US9257129B2 (ja)
EP (1) EP2784691B1 (ja)
JP (1) JP6089878B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6094322B2 (ja) * 2013-03-28 2017-03-15 富士通株式会社 直交変換装置、直交変換方法及び直交変換用コンピュータプログラムならびにオーディオ復号装置
EP3067889A1 (en) * 2015-03-09 2016-09-14 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Method and apparatus for signal-adaptive transform kernel switching in audio coding
WO2018135511A1 (ja) * 2017-01-18 2018-07-26 日本電信電話株式会社 秘密計算方法、秘密計算システム、秘密計算装置、およびプログラム
US10553224B2 (en) * 2017-10-03 2020-02-04 Dolby Laboratories Licensing Corporation Method and system for inter-channel coding

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005196198A (ja) * 2003-12-30 2005-07-21 Samsung Electronics Co Ltd Mpegオーディオデコーダの合成フィルタ及びそのデコード方法
JP2010539625A (ja) * 2007-09-19 2010-12-16 クゥアルコム・インコーポレイテッド スピーチおよびオーディオコーディングアプリケーションのためのmdct/imdctフィルタバンクの効率的な設計
JP2013050540A (ja) * 2011-08-30 2013-03-14 Fujitsu Ltd オーディオ符号化装置、オーディオ符号化方法及びオーディオ符号化用コンピュータプログラム

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2947788B1 (ja) 1998-05-12 1999-09-13 日本電信電話株式会社 音声および音響信号の高速な符号化方法および装置および記録媒体
US20020027954A1 (en) * 1998-06-30 2002-03-07 Kenneth S. Singh Method and device for gathering block statistics during inverse quantization and iscan
US6199039B1 (en) * 1998-08-03 2001-03-06 National Science Council Synthesis subband filter in MPEG-II audio decoding
US6870885B2 (en) * 2001-05-16 2005-03-22 Qualcomm Incorporated Apparatus and method for decoding and computing a discrete cosine transform using a butterfly processor
JP2005128401A (ja) 2003-10-27 2005-05-19 Casio Comput Co Ltd 音声処理装置及び音声符号化方法
JP4772607B2 (ja) 2006-07-10 2011-09-14 パナソニック株式会社 2次元直交変換装置、2次元直交変換方法および撮像システム
US8660380B2 (en) * 2006-08-25 2014-02-25 Nvidia Corporation Method and system for performing two-dimensional transform on data value array with reduced power consumption
ATE500588T1 (de) 2008-01-04 2011-03-15 Dolby Sweden Ab Audiokodierer und -dekodierer
CN101930426B (zh) * 2009-06-24 2015-08-05 华为技术有限公司 信号处理方法、数据处理方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005196198A (ja) * 2003-12-30 2005-07-21 Samsung Electronics Co Ltd Mpegオーディオデコーダの合成フィルタ及びそのデコード方法
JP2010539625A (ja) * 2007-09-19 2010-12-16 クゥアルコム・インコーポレイテッド スピーチおよびオーディオコーディングアプリケーションのためのmdct/imdctフィルタバンクの効率的な設計
JP2013050540A (ja) * 2011-08-30 2013-03-14 Fujitsu Ltd オーディオ符号化装置、オーディオ符号化方法及びオーディオ符号化用コンピュータプログラム

Also Published As

Publication number Publication date
JP6089878B2 (ja) 2017-03-08
EP2784691A3 (en) 2015-12-23
US9257129B2 (en) 2016-02-09
US20140294181A1 (en) 2014-10-02
EP2784691A2 (en) 2014-10-01
EP2784691B1 (en) 2021-04-21

Similar Documents

Publication Publication Date Title
JP7353427B2 (ja) 音場のための高次アンビソニックス表現を圧縮および圧縮解除する方法および装置
JP5269908B2 (ja) 5点dct−ii、dct−iv、およびdst−ivの計算のための高速アルゴリズム、ならびにアーキテクチャ
KR101286329B1 (ko) 저 복잡도의 스펙트럼 대역 복제 (sbr) 필터뱅크
RU2691231C2 (ru) Декодер для декодирования кодированного аудиосигнала и кодер для кодирования аудиосигнала
KR100776235B1 (ko) 변환 표시로의 변환 또는 변환 표시의 역변환을 위한 장치및 방법
RU2611986C2 (ru) Сигнальный процессор, формирователь окон, кодированный медиасигнал, способ обработки сигнала и способ формирования окон
JP6089878B2 (ja) 直交変換装置、直交変換方法及び直交変換用コンピュータプログラムならびにオーディオ復号装置
JP6094322B2 (ja) 直交変換装置、直交変換方法及び直交変換用コンピュータプログラムならびにオーディオ復号装置
EP2250642B1 (en) Method and apparatus for transforming between different filter bank domains
US9812140B2 (en) Method and apparatus for quadrature mirror filtering
TW202334938A (zh) 正交鏡像濾波器域中之沉浸式音訊及視訊服務空間重建濾波器庫
Britanak et al. Perfect Reconstruction Cosine/Sine-Modulated Filter Banks in the Dolby Digital (Plus) AC-3 Audio Coding Standards
KR20240068780A (ko) 사운드 필드를 위해 고차 앰비소닉스 표현을 압축 및 압축 해제하기 위한 방법 및 장치

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151204

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160810

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160823

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161019

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170110

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170123

R150 Certificate of patent or registration of utility model

Ref document number: 6089878

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees