JP3761639B2 - Audio decoding device - Google Patents

Audio decoding device Download PDF

Info

Publication number
JP3761639B2
JP3761639B2 JP27881096A JP27881096A JP3761639B2 JP 3761639 B2 JP3761639 B2 JP 3761639B2 JP 27881096 A JP27881096 A JP 27881096A JP 27881096 A JP27881096 A JP 27881096A JP 3761639 B2 JP3761639 B2 JP 3761639B2
Authority
JP
Japan
Prior art keywords
data
audio
frequency domain
frequency
circuit
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.)
Expired - Lifetime
Application number
JP27881096A
Other languages
Japanese (ja)
Other versions
JPH09252254A (en
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.)
United Module Corp
Original Assignee
United Module Corp
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 United Module Corp filed Critical United Module Corp
Priority to JP27881096A priority Critical patent/JP3761639B2/en
Publication of JPH09252254A publication Critical patent/JPH09252254A/en
Application granted granted Critical
Publication of JP3761639B2 publication Critical patent/JP3761639B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、データ圧縮技術を用いて圧縮されたオーディオデータを伸張するオーディオ復号装置に関し、例えば、伝送路から送られてくる圧縮オーディオデータあるいは記録媒体から再生される圧縮オーディオデータを伸張するオーディオ復号装置に関するものである。
【0002】
【従来の技術】
従来から、オーディオ信号を高能率符号化するための様々な方式が知られている。例えば、時間領域の信号を周波数領域の信号に変換する時間軸/周波数軸変換を用いてオーディオ信号を変換し、各周波数帯域において人間の聴覚に適応したデータ圧縮を行う方式がある。この時間軸/周波数軸変換の方式としては、例えば、サブバンドフィルタやMDCT(Modified Discrete Cosine Transform)を用いた方式が挙げられる。
【0003】
なお、サブバンドフィルタ符号化方式およびMDCT符号化方式の概要については、例えば、MARCEL DEKKAR 社(New York)1991年出版、 FURUI&SONDHI編の“ Adbances in Speech Signal Processing ”の109 ページから140 ページに記載されている。以下では、MDCT符号化方式に基づく時間軸/周波数軸変換を用いたオーディオ符号化方式について説明する。
【0004】
図11に、このMDCT符号化方式を用いた符号化装置の構成例を示す。この符号化装置における符号化の処理は、以下に説明する通りである。
すなわち、入力端子51を介して入力されたディジタルオーディオ信号は、MDCT回路41により、ある時間間隔毎に時間領域の信号から周波数領域の信号へと変換される。この時間間隔に対応するデータ長を変換ブロック長と呼ぶ。
【0005】
そして、上記MDCT回路41から出力された周波数領域のオーディオデータは、量子化回路42で量子化(可変長符号化)された後、マルチプレクス回路43においてサンプリング周波数等のヘッダ情報が付加されて、符号化データとして出力端子52より出力される。
上記MDCT回路41で行われる時間軸/周波数軸変換処理は、以下の式(1)で記述される。
【0006】
【数1】

Figure 0003761639
【0007】
ここで、x(k)は入力信号、w(k)は窓関数、y(m)はMDCTされた信号、N は変換ブロック長(samples )、n=N/2 は位相項である。窓関数w(k)は、各変換ブロックの端点で生じることがある不連続な信号を補正するためのものであり、その形状の一例を図12に示す。また、式(1)において、MDCT回路41への入力信号x(k)の数はN であり、一方、m は0からN/2-1 までの値をとるのでMDCTされた信号y(m)の数はN/2 となる。
【0008】
MDCT処理では、現ブロックの変換後に次のブロックを変換するときには、現ブロックから次のブロックへサンプルをN/2 だけずらした点で変換を行なう。すなわち、サンプルがN/2 点だけオーバーラップする形で各変換ブロックにMDCTを連続的にかけていく。これは、各変換ブロックの境界部分で不連続な信号が発生するのを防ぐためである。この様子が図13に示されている。図13は、変換ブロック長N の値が512の場合の例である。
【0009】
この図13の例では、オーディオデータは、説明のために256サンプル毎にサブブロック化されている。まず、サブブロック0とサブブロック1とを覆うようにして窓関数がかけられ、MDCTされる。次に、サンプルを256点だけずらし、サブブロック1とサブブロック2とを覆うようにして窓関数がかけられてMDCTされる。このように、図13の例では、サンプルを256点づつオーバーラップしながら512点の各ブロックのMDCTが連続的に施されていく。
【0010】
MDCT回路41での変換ブロック長が一定の場合には上記のような処理となるが、入力信号の信号特性により変換ブロック長を変化させることで、符号化効率を上げる方式も知られている。このような可変ブロック長のMDCT符号化方式の一例としては、国際標準規格ISO IEC 11172−3の中のMPEGオーディオレイヤIII を挙げることができる。
【0011】
この可変ブロック長のMDCT方式では、入力信号の特性に合わせて時間的に変換ブロック長を変化させる。すなわち、入力信号の特性が定常的であるときには、長い変換ブロック長を用いて符号化を行なう。これに対して、例えばパルス的な信号が入力されたときなど、入力信号の特性が急に変化するようなときには、短い変換ブロック長を用いて符号化を行なう。
【0012】
なお、変換ブロック長を変化させる方法は種々あるが、長い変換ブロック長が整数N のときに、短い変換ブロック長を N/L (L =2、3、…)とする方法が一般的によく用いられる。
【0013】
図11の符号化装置では、変換ブロック長決定回路44において、入力されたオーディオ信号の特性に合わせて変換ブロック長を決定し、決定した変換ブロック長情報をMDCT回路41およびマルチプレクス回路43へ供給する。MDCT回路41では、変換ブロック長決定回路44より入力される変換ブロック長情報に合わせて変換ブロック長を時間的に変化させながらMDCT処理を行う。
【0014】
一方、上記変換ブロック長決定回路44により決定された変換ブロック長情報がマルチプレクス回路43に送られると、上記マルチプレクス回路43により、変換ブロック長情報と量子化データとが多重化され、符号化データとして出力端子52より出力される。
【0015】
ところで、入力端子51より入力されるディジタルオーディオ信号としては、複数チャネルのオーディオ信号を扱うことが可能である。例えば、映画等で使用される5チャネルのオーディオ信号を入力した場合には、MDCT回路41、量子化回路42、変換ブロック長決定回路44での処理を5チャネルそれぞれ独立に行なう。そして、マルチプレクス回路43において5チャネル分のデータを多重化した後、符号化データとして出力する。
【0016】
この場合、各チャネル間の相関を利用して符号化を行うことにより、同一ビットレートにおける音質を向上させることが可能である。そして、そのような処理方式として、差分方式とカップリング方式とが知られている。前者の差分方式は、主に低周波数のサブバンド情報(各変換ブロック内のデータ)に対して用いられ、2つのチャネルのサブバンド情報の和と差とを求めることで、符号化時に一方のチャネルに集中的に情報を配置し、情報量を削減することができるようにした方式である。
【0017】
一方、後者のカップリング方式は、主に高周波数のサブバンド情報に対して用いられ、実サンプルの値を複数のチャネルで共用するようにすることにより、情報量を削減することができるようにした方式である。すなわち、サブバンド情報の高周波領域では音感としてのパワーが比較的小さく、1つのサブバンド情報を複数チャネルで共用化しても聴感上問題がない。そこで、各チャネルにおける高周波領域のサブバンド情報で類似する部分があれば、その類似部分の情報を共用化することにより情報量を削減しているのである。
【0018】
次に、従来のMDCT方式によるオーディオ復号装置の一例を図14に示す。以下、この図14を用いて複数チャネルのオーディオデータを復号する従来の復号技術の説明を行なう。
【0019】
図14において、符号化されたオーディオデータは、入力端子21を介してデマルチプレクス回路31へと入力される。デマルチプレクス回路31では、入力された符号化データが、多重化された複数チャネルのオーディオデータと変換ブロック長情報とに分離される。
【0020】
上記デマルチプレクス回路31により出力された各チャネルのオーディオデータは、逆量子化回路32において各チャネル毎に逆量子化処理が施され、その処理結果がIMDCT (Inverse MDCT) 回路33に入力される。ここで、逆量子化処理とは、可変長符号化された各サンプルデータのビット長を求めて、各サンプルデータを識別することを言う。IMDCT回路33には、上記デマルチプレクス回路31で分離された変換ブロック長情報も入力される。
【0021】
このIMDCT回路33では、入力された変換ブロック長情報をもとに、各チャネル毎にIMDCT処理が行なわれる。上記IMDCT回路33で行われる周波数軸/時間軸変換処理は、以下の式(2)で記述される。
【0022】
【数2】
Figure 0003761639
【0023】
ここで、x(k)はIMDCT処理された信号、y(m)はMDCT処理された信号、N は変換ブロック長、n=N/2 は位相項である。また、IMDCT処理された信号x(k)の数はN であり、MDCT処理された信号y(m)の数はN/2 である。
【0024】
この式(2)に基づいてIMDCT処理された信号は、ディレイバッファ34に一時的に記憶された後、窓掛け演算回路35により窓掛け演算が施される。窓掛け演算回路35は、MDCT処理のときと同じ形状の窓関数(図12に例示)をかけ、更に現ブロックの前半部分と前ブロックの後半部分とでオーバーラップする部分のデータを加算してオーディオ信号を再構成する。これは、MDCT処理を行う際にN/2 点ずつサンプルをオーバーラップして変換してあるため、加算を行わないとエリアシングが発生してしまうためである。
【0025】
図15に、このときのオーバーラップの様子を示す。この例では、まず、それぞれ512点のサンプルを有するブロック0とブロック1とで256点だけオーバーラップする部分が加算され、256点のオーディオ信号が再構成される。次に、ブロック1とブロック2とで256点だけオーバラップする部分が加算され、次の256点のオーディオ信号が再構成される。以下同様にして、256点ずつオーディオ信号が再構成されていく。
【0026】
ところで、複数チャネルのオーディオデータが符号化されているとき、もし、復号化側における音声出力用のスピーカが、符号化されたチャネル数より少ない数のチャネルしか持たない場合には、ダウンミキシング処理を行うことがある。ダウンミキシング処理とは、複数のチャネルのオーディオデータからそれ以下のチャネル数のオーディオデータをつくり出す処理のことである。この処理の一例は、以下の式(3)で記述される。
【0027】
【数3】
Figure 0003761639
【0028】
ここで、x[ch][n]はチャネルchに対応する入力信号、y[n]はダウンミキシングされた1つのチャネルの信号、α[ch]はチャネルchに対応するダウンミキシングのための係数、M はダウンミキシングする対象チャネル数を示す。
【0029】
例えば、映画等で使用されるオーディオ信号は、5チャネル分のオーディオデータが符号化されていることがあるが、一般の家庭のオーディオ装置では、2チャネルしか出力できないことが多い。この場合には、時間領域ダウンミキシング回路36で式(3)に示したダウンミキシング処理を2回行い、5チャネルの音声から2チャネルの音声を作りだすようにしている。
【0030】
勿論、符号化されたチャネル数のオーディオデータを復号化側で全て出力できる場合にはダウンミキシング処理を行う必要はない。この場合には、ダウンミキシング回路36では何の処理も行われず、窓掛け演算回路35により窓掛けが行われたオーディオデータがそのまま出力端子22から出力される。
【0031】
図16は、図14に示した従来のオーディオ復号装置を、メモリ量も考慮して更に詳しく示したハードウェア構成図である。
この図16は、5チャネルのオーディオデータを扱う例を示すものであり、変換ブロック長を512点とした場合のメモリ量を記述してある。また、上記5つのチャネルは、それぞれ左チャネルLch 、センタチャネルCch 、右チャネルRch 、後方左チャネルLSch、後方右チャネルRSchであるとする。
【0032】
図16において、デマルチプレクス回路31、逆量子化回路32における処理を経て逆量子化された各チャネルのオーディオデータは、逆量子化バッファ37に格納される。そして、その逆量子化バッファ37に格納された各チャネルの逆量子化データに対して、IMDCT回路(周波数軸/時間軸変換回路)33により式(2)の演算が各チャネルごとに実行され、その演算結果が時間軸情報バッファ38へと格納される。
【0033】
次に、上記時間軸情報バッファ38に格納された各チャネルのオーディオデータは、窓掛け演算回路(加算/窓掛け回路)35に与えられる。そして、この窓掛け演算回路35において、窓掛け演算が実行された後、現ブロックの前半部分のデータと、ディレイバッファ34に格納されている前ブロックの後半部分のデータとがオーバーラップ加算される。
【0034】
そして、上記窓掛け演算回路35によりオーバーラップ加算された結果は、PCMバッファ39に格納される。また、現ブロックの後半部分のデータは、窓掛け演算の後で上記ディレイバッファ34に格納され、次のブロックにおけるオーバーラップ加算に利用される。
【0035】
次に、ダウンミキシング処理が必要な場合には、時間領域ダウンミキシング回路36によりPCMバッファ39から各チャネルのオーディオデータが読み出され、式(3)で示されるダウンミキシング処理が実行される。そして、このようにしてダウンミキシング処理された結果が出力端子22を介して出力される。
【0036】
【発明が解決しようとする課題】
図16に示したように、従来のオーディオ復号装置においては、逆量子化バッファ37、時間軸情報バッファ38、ディレイバッファ34、PCMバッファ39の各バッファメモリを設けることが必要であった。そして、逆量子化バッファ37、時間軸情報バッファ38、ディレイバッファ34のメモリ容量はそれぞれ少なくとも256×5ワード、PCMバッファ39のメモリ容量は少なくとも256×10ワード必要であった。
【0037】
上記PCMバッファ39で256×10ワード分のメモリ容量が必要なのは、以下の理由による。すなわち、一般に、オーディオ機器ではPCMデータを一定のレートで出力することが要求されている。これを満足するためには、窓掛け演算回路35による演算直後のデータを格納するためのものと、一定のレートでデータを出力するためのものとでバッファを2重化し、パイプライン動作させる必要がある。このため、PCMバッファ39のメモリ容量は、256×5×2ワード分必要となるのである。
【0038】
つまり、従来のオーディオ復号装置では、逆量子化バッファ37、時間軸情報バッファ38、ディレイバッファ34、PCMバッファ39の各バッファメモリで合計6400ワード分のメモリ容量が必要であり、かなりのメモリ量を必要とするいう問題があった。
【0039】
本発明はこのような問題を解決するために成されたものであり、オーディオ復号装置において音質をほとんど損なうことなくメモリ容量を低減させることを目的とする。すなわち、本発明は、一連の復号処理を行うために必要なメモリ容量を低減させることにより、ダウンミキシングが可能でかつ安価なオーディオ復号装置を提供することを目的とする。
【0040】
【課題を解決するための手段】
本発明のオーディオ復号装置は、複数チャネルのオーディオ信号を時間軸/周波数軸変換を介して周波数領域で表す周波数領域オーディオデータを含む符号化データを復号するオーディオ復号装置であって、上記オーディオ復号装置は、上記複数チャネルのオーディオ信号を所定のレベル比で所定のチャネル数にミキシングするように、上記周波数領域オーディオデータを処理する周波数領域ダウンミキシング手段と、上記周波数領域ダウンミキシング手段により処理された周波数領域オーディオデータを一時的に記憶する第1のバッファメモリと、上記第1のバッファメモリに一時的に記憶された周波数領域オーディオデータを、周波数領域から時間領域へと変換する周波数軸/時間軸変換手段と、上記周波数軸/時間軸変換手段により時間領域に変換された時間領域オーディオデータを一時的に記憶する第2のバッファメモリとを含むことを特徴とする。
【0051】
【発明の実施の形態】
以下に、本発明のオーディオ復号装置の実施形態を図面を参照しながら説明する。第1の実施形態のオーディオ復号装置の構成例を図1に示す。
【0052】
図1において、入力端子21を介して入力された符号化データは、デマルチプレクス回路31で複数チャネルのオーディオデータと変換ブロック長情報とに分離される。このオーディオデータは、周波数領域の複数チャネルのオーディオ信号を表しているので、周波数領域オーディオデータと呼ぶ。
【0053】
このデマルチプレクス回路31により分離された各チャネルの周波数領域オーディオデータは、逆量子化回路32で各チャネル毎に逆量子化処理が施され、周波数領域ダウンミキシング手段40へと入力される。また、デマルチプレクス回路31で分離された変換ブロック長情報は、周波数軸/時間軸変換手段33へと入力される。
【0054】
周波数軸/時間軸変換手段33から出力された時間領域の複数チャネルのオーディオ信号を表すオーディオデータ(時間領域オーディオデータ)は、ディレイバッファ34で遅延された後、窓掛け演算回路35に入力されて窓掛け演算が施される。
【0055】
図2に、図1に示した本実施形態のオーディオ復号装置の周波数領域ダウンミキシング手段40および周波数軸/時間軸変換手段33に相当する部分を、メモリ量も考慮して更に詳しく示す。
この周波数領域ダウンミキシング手段40および周波数軸/時間軸変換手段33内で行われる処理については、図2を用いて以下に説明する。
【0056】
この図2も図16と同様に、5チャネルのオーディオデータを扱う例を示すものであり、変換ブロック長を512点とした場合のメモリ量を記述してある。また、図2で、Lch は左チャネル、Cch はセンタチャネル、Rch は右チャネル、LSchは後方左チャネル、RSchは後方右チャネル、Ldchはダウンミキシング処理した左チャネル、Rdchはダウンミキシング処理した右チャネルの各チャネル用のデータ領域を示している。
【0057】
図1の逆量子化回路32で逆量子化されたデータは、図2の第1のメモリ回路111に格納される。次に、第1のメモリ回路111に格納された周波数領域のオーディオデータに対して、周波数領域ダウンミキシング回路101でダウンミキシング処理が行なわれ、その結果が第2のメモリ回路112へと格納される。周波数領域ダウンミキシング回路101内で行われる処理は、以下の式(4)で記述される。
【0058】
【数4】
Figure 0003761639
【0059】
ここで、X[ch][n] はチャネルchに対応する周波数領域の入力信号、Y[n] はダウンミキシングされた周波数領域の信号、α[ch]はチャネルchに対応するダウンミキシングのための係数であり、式(3)に示したものと同じものである。また、M はダウンミキシングする対象チャネル数を示す。
【0060】
もし、ダウンミキシング処理の対象となる各チャネル間で変換ブロック長が異なる場合には、まず、他のチャネルと異なっているチャネルのデータを周波数軸/時間軸変換回路105で時間領域のデータに一旦変換して第5のメモリ回路115に格納する。その後、時間軸/周波数軸変換回路104で変換ブロック長をそろえる形で周波数領域への変換を再度行なう。このように、周波数領域内でダウンミキシング処理を行なうときには、各チャネルの変換ブロック長をそろえておくようにする。これにより、周波数領域内でのダウンミキシング処理を効率よく行うようにすることができる。
【0061】
例えば、変換ブロック長としてN とN/2 の2種類を使う符号化を行なっている場合を考える。この場合には、ダウンミキシング処理の対象となる5つのチャネルが、変換ブロック長N とN/2 との2種類を持つ可能性がある。このときは、周波数軸/時間軸変換回路105により変換ブロック長N/2 のデータを2つ分周波数軸/時間軸変換した後で、時間軸/周波数軸変換回路104により変換ブロック長N で時間軸/周波数軸変換を施し、各チャネル間の変換ブロック長をN にそろえるようにする。
【0062】
次に、周波数軸/時間軸変換回路102により、第2のメモリ回路112に格納されている周波数領域のオーディオデータに対して時間領域への変換処理が行なわれ、その変換結果が第3のメモリ回路113へ格納される。最後に、加算/窓かけ回路103により以下のような処理が行われる。
【0063】
すなわち、現ブロックの前半部分のデータは、窓かけ処理が施された後、第4のメモリ回路114に蓄積されている前ブロックの後半部分のデータとオーバーラップ加算され、オーディオデータが再構成される。そして、このようにして再構成されたオーディオデータが出力端子22を介して出力される。また、現ブロックの後半部分のデータは、窓かけ処理が行なわれた後、第4のメモリ回路114内に格納される。
【0064】
図2に示すように、各メモリ回路111〜115の規模は、第1のメモリ回路111が256×5ワード、第2、第4のメモリ回路112、114がそれぞれ256×2ワード、第3のメモリ回路113が512×2ワード、第5のメモリ回路115が512ワードである。つまり、本実施形態では合計で3840ワード分のメモリで済むので、図16の従来例と比較した場合、本実施形態では2560ワードだけメモリ量が少なくて済むことが分かる。したがって、本実施形態によれば、ダウンミキシングが可能なオーディオ復号装置を安価に構成することができる。
【0065】
図2に示した周波数領域ダウンミキシング手段および周波数軸/時間軸変換手段での処理では、各チャネル間における変換ブロック長の不一致を周波数軸/時間軸変換、時間軸/周波数軸変換を施すことで修正している。また、可変ブロック長を有する時間軸/周波数軸変換を用いた符号化方式では、ほとんどのブロックで周波数分解能がよく符号化効率の高い長い変換ブロック長が選択され、短い変換ブロック長が選択されるのは僅かなブロックだけである。このため、ダウンミキシング処理の際に変換ブロック長の不一致が生じることも僅かである。
【0066】
なお、復号の処理量については、チャネル間で変換ブロック長の不一致が生じたブロックで局所的に処理量が増えるが、その他のほとんどのブロックでは逆に処理量が減るため、全体的には処理量を従来よりも20%程度減らすことが可能である。
【0067】
また、更に安価なオーディオ復号装置を構成するためには、図2の周波数軸/時間軸変換回路105、第5のメモリ回路115および時間軸/周波数軸変換回路104を省き、各チャネル間で変換ブロック長が一致しなかった場合には、不一致のチャネルをダウンミキシング処理の対象から外すような処理を行なうようにすれば良い。この場合でも、ダウンミキシング専用のオーディオ復号装置を安価に構成することができ、しかも、その割りには十分な音質を得ることができ、回路規模と復号処理量とを更に小さくすることができる。
【0068】
なお、本実施形態では、時間軸/周波数軸変換としてMDCTを例に挙げて説明してきたが、以上の議論は他の方式の時間軸/周波数軸変換を用いた場合にも容易に適応することが可能である。
【0069】
以上説明したように本実施形態によれば、時間軸/周波数軸変換を用いて周波数領域で符号化された複数チャネルのオーディオデータを復号するオーディオ復号装置において、周波数領域でダウンミキシング処理を行なった後で周波数軸/時間軸変換処理を行うようにしたので、ダウンミキシング処理より後の周波数軸/時間軸変換処理で扱うデータのチャネル数を上記ダウンミキシング処理よって少なくすることができ、上記周波数軸/時間軸変換処理でデータを一時格納しておくために必要なメモリ回路の数を減らすことができる。また、上記周波数軸/時間軸変換処理で扱うデータのチャネル数が少なくて済むので、復号の処理量も全体として減らすことができ、これにより、音質を大幅に低下させることなくダウンミキシングが可能で安価なオーディオ復号装置を実現することができる。
【0070】
また、本実施形態の他の特徴によれば、上記周波数領域ダウンミキシング手段によって複数チャネルのオーディオデータを周波数領域でダウンミキシングする際に対象となる各チャネル間で時間軸/周波数軸変換処理の変換ブロック長が異なる場合に、全てのチャネルの変換ブロック長を合わせた後でダウンミキシング処理を行なうようにしたので、周波数領域内でのダウンミキシング処理を効率よく行うようにすることができる。
【0071】
また、本実施形態のその他の特徴によれば、各チャネル間で変換ブロック長が一致しなかった場合には、不一致のチャネルをダウンミキシング処理の対象から外すようにしたので、装置構成を簡素化することができるとともに、ダウンミキシングが可能で安価なオーディオ復号装置を構成した割りには十分な音質を得ることができ、音質をそれほど低下させることなく回路規模と復号処理量とを更に小さくすることができる。
【0072】
次に、本発明によるオーディオ復号装置の第2の実施形態を図面に基づいて詳細に説明する。
図3は、第2の実施形態によるオーディオ復号装置のハードウェア構成例を示す図であり、従来例として示した図16の構成を変形したものである。
【0073】
なお、図16ではデマルチプレクス回路31と逆量子化回路32とに分けて示していたのを、図3ではこれらを1つにまとめてDMUX1として示している。すなわち、本実施形態のDMUX1は、多重化データの分離処理と分離した各チャネルのオーディオデータの逆量子化処理とを同時に行っている。また、この図3も図16と同様に、5チャネルのオーディオデータを扱う例を示したものであり、変換ブロック長を512点とした場合のメモリ量を示している。
【0074】
この図3に示す第2の実施形態によるオーディオ復号装置は、上記DMUX1とIMDCT回路2とを協調動作させることにより、バッファメモリの容量を削減することができるようにしたものである。
【0075】
すなわち、図16の従来例では、IMDCT回路33の前後にそれぞれ256×5ワード分のバッファメモリが2つ備えられていたが、本実施形態では、上記DMUX1とIMDCT回路2とでパイプライン処理を行ってワークバッファ3を使いまわすようにすることにより、ワークバッファ3のメモリ容量が256×3ワードで済むようにしている。なお、パイプライン処理とは、複数の処理において同一のメモリを共通して利用し合うことを言う。
【0076】
このことを、図4および図5を用いて以下に詳しく説明する。すなわち、図16に示した従来例では、図4に示すように、まず、左チャネルLch 、センタチャネルCch 、右チャネルRch 、後方左チャネルLSch、後方右チャネルRSchの5つのチャネルについて逆量子化処理が行われ、それにより得られる各チャネルの逆量子化データが逆量子化バッファ37に格納される。
【0077】
上記逆量子化バッファ37に5チャネル分の逆量子化データが格納されたら、次に、IMDCT回路33により、その5チャネル分の逆量子化データに対して周波数軸/時間軸変換処理が各チャネルごとに行われ、それにより得られる時間領域のオーディオデータが各チャネルごとに時間軸情報バッファ38に格納される。したがって従来は、全部で10セットのバッファメモリが必要であった。
【0078】
これに対して本実施形態では、図5に示すように、DMUX1によりまず左チャネルLch のオーディオデータが逆量子化されてワークバッファ3内の第1のバッファ#1に格納されると、その直後に、その第1のバッファ#1に格納された逆量子化データがIMDCT回路2により周波数軸/時間軸変換される。その間、DMUX1は、次のセンタチャネルCch について逆量子化処理を行い、それにより得られる逆量子化データを第2のバッファ#2に格納する。
【0079】
また、IMDCT回路2は、上記第1のバッファ#1に格納された逆量子化データに対する周波数軸/時間軸変換処理が終わったら直ぐに、次の第2のバッファ#2に格納された逆量子化データに対して周波数軸/時間軸変換処理を行う。その間、DMUX1は、次の右チャネルRch について逆量子化処理を行い、それにより得られる逆量子化データを再び第1のバッファ#1に格納する。
【0080】
このようにしてDMUX1とIMDCT回路2とをパイプライン動作させることにより、そのパイプライン処理で使用するワークバッファ3を、基本的には第1のバッファ#1と第2のバッファ#2だけ設ければ済むようにしている。
【0081】
なお、本実施形態では、図3に示したように、ワークバッファ3の中に、上記第1のバッファ#1および第2のバッファ#2に加えて第3のバッファ#3を設けている。この第3のバッファ#3は、従来例のところで説明したカップリング用のデータを格納するために用いるものである。
【0082】
すなわち、カップリング方式では、各チャネルにおける高周波領域のオーディオデータで類似する部分の情報を共用化するようにしているので、その共用化している部分のデータを保持しておくためのバッファメモリが別に必要になるのである。ここでは、第3のバッファ#3のメモリ容量を256ワードとしたが、共用化される最大限の容量(符号化方式によって定まる容量。本実施形態では219ワードとした)を少なくとも備えていれば良い。
【0083】
このように、本実施形態では、DMUX1における多重化データの分離処理および逆量子化処理と、IMDCT回路2における周波数軸/時間軸変換処理とで使用するバッファメモリは、ワークバッファ3内の第1〜第3のバッファ#1〜#3の3セットで済むようになり、そのメモリ容量は256×3ワードで済む。したがって、同じ処理に256×10ワードのメモリ容量が必要であった従来例(図16)に比べて、全体のメモリ量を大幅に削減することができる。
【0084】
次に、本発明の第3の実施形態について説明する。図6は、この第3の実施形態によるオーディオ復号装置のハードウェア構成例を示す図であり、図3に示した第2の実施形態による構成を更に変形したものである。
【0085】
この図6に示すオーディオ復号装置は、IMDCT回路2により周波数軸/時間軸変換されたオーディオデータのコサイン関数の対称性を利用して、時間情報に変換されたオーディオデータの256点のサンプル値のうち、オリジナルな値のみをディレイバッファ9に格納するようにすることにより、バッファメモリの容量を更に削減することができるようにしたものである。
【0086】
このことを図7、図13、図15を用いて以下に詳しく説明する。本実施形態における変換ブロック長は512点であり、時間領域に変換された512点のオーディオデータは、次に窓掛け演算が行われるようになっているが、図13に示したように、符号化時において窓掛けは、サンプル値を256点ずつずらしてオーバーラップさせながら行うようになっている。つまり、上記512点のサンプル値は、256点のサンプル値が2回使いまわされるようになっている。
【0087】
そこで、第3の実施形態では、上記256点のサンプル値の使いまわしの仕方を工夫することにより、ディレイバッファ9のメモリ容量を削減できるようにしている。すなわち、図7に示すように、オリジナルな256点のサンプル値(▲1▼、▲2▼の部分)を変換ブロック長の真ん中に配置する。そして、窓掛け演算を行う前に、コサイン関数の対称性を使用して上記▲1▼、▲2▼の部分のサンプル値と対称な▲1▼′、▲2▼′部分のサンプル値を求めることにより、512点のサンプル値を得るようにしている。
【0088】
この場合、図15を用いて説明したように、上述のようにして求められる512点のサンプル値のうち、前半部分Aに属する256点のサンプル値は、図6の窓掛け演算回路8におけるオーバーラップ加算にそのまま用いれるのに対して、後半部分Bに属する256点のサンプル値は、所定時間の遅延を受けてからオーバーラップ加算に利用される。つまり、所定時間の遅延を受けるのは、後半部分Bに属する256点のサンプル値だけである。
【0089】
ここで、後半部分Bに属する256点のサンプル値のうち、▲2▼′のサンプル値はオリジナルな▲2▼のサンプル値から計算により求められる。したがって、▲2▼の部分の128点のサンプル値をディレイバッファ9に格納して所定時間だけ遅延させるようにすれば、512点のサンプル値を再現して窓掛け演算を行うことができるようになる。
【0090】
なお、図6に示した窓掛け演算回路8を、上記▲1▼、▲2▼の部分のサンプル値から対称性を有する▲1▼′、▲2▼′部分のサンプル値を求めた後で窓掛けを行うようにすれば、実用上問題はない。
【0091】
以上のように、第3の実施形態では、周波数軸/時間軸変換されたオーディオデータのオリジナルな部分である128点のサンプル値をディレイバッファ9に格納すれば良い。これにより、図3の第2の実施形態では、ディレイバッファ5は256×5ワード分のメモリ容量が必要であったのに対して、第3の実施形態では、128×5ワード分のメモリ容量で済むので、オーディオ復号装置全体のメモリ量を更に削減することができる。
【0092】
次に、本発明の第4の実施形態について説明する。図8は、この第4の実施形態によるオーディオ復号装置のハードウェア構成例を示す図であり、図6に示した第3の実施形態による構成を更に変形したものである。
【0093】
この図8に示すオーディオ復号装置は、窓掛け演算回路8により窓かけが施されて生成された5チャネルのPCMデータを直ちにダウンミックス処理し、ダウンミックス後の結果のみをPCMバッファ10に格納するようにすることにより、バッファメモリの容量を更に削減することができるようにしたものである。
【0094】
すなわち、図8のDMUX1およびIMDCT回路2ではパイプライン的に処理を行っているので、それにより得られるオーディオデータを利用して窓掛けを行う窓掛け演算回路8では、5チャネル分のPCMデータが間欠的に生成される。この場合、上述した第2および第3の実施形態では、その5チャネル分のPCMデータをそのままPCMバッファ6に蓄えた後で、ダウンミキシング回路7により2チャネルにダウンミックスして出力するようになっていた。
【0095】
これに対して、第4の実施形態では、窓掛け演算回路8により生成された5チャネルのPCMデータを直ぐにダウンミックスして2チャネルにする。そして、そのダウンミックスした2チャネルのみのPCMデータをPCMバッファ10に格納するようにしている。
【0096】
これにより、第2および第3の実施形態では、PCMバッファ6は256×10ワード分のメモリ容量が必要であったのに対して、第4の実施形態では、PCMバッファ10は256×4ワード分のメモリ容量で済み、オーディオ復号装置全体のメモリ量を更に削減することができる。
【0097】
なお、図8において、ダウンミキシング回路7とPCMバッファ10との間が両矢印で結ばれているのは、以下の理由による。すなわち、ダウンミックス処理は、5チャネルのPCMデータが全て揃ってから一気に行うのではなく、各チャネルのPCMデータを少しずつ重ね書きするようにして行っている。
【0098】
したがって、PCMバッファ10に一度格納されたデータをダウンミキシング回路7が読み込んで、その読み込んだ値にダウンミックスした値を加算し、その加算した値をPCMバッファ10内の同じ記憶領域に再び記憶するようにするという処理が必要となる。図8の両矢印は、このような重ね書きの処理を示しているのである。
【0099】
次に、本発明の第5の実施形態について説明する。図9は、この第5の実施形態によるオーディオ復号装置のハードウェア構成例を示す図であり、図8に示した第4の実施形態による構成を更に変形したものである。
【0100】
上記第4の実施形態では、ダウンミックス処理を行った後に、それにより得られるチャネル数の少ないPCMデータをPCMバッファ10に格納するようにすることにより、PCMバッファ10のメモリ量をダウンミックスした分だけ削減することができるようにしていた。これと同じようなことが、ディレイバッファ9との関係においても言える。
【0101】
そこで、図9に示す第5の実施形態では、次のように処理を行うようにしている。すなわち、IMDCT回路2により時間領域の情報に変換されたオーディオデータを、遅延を受けない部分のデータ(図7の前半部分Aに属する256点のサンプル値)と遅延を受ける部分のデータ(図7の後半部分Bに属する256点のサンプル値)とに分ける。
【0102】
そして、遅延を受けない側では、通常通り、第1の窓掛け演算回路11で窓掛け演算を行った後、第1のダウンミキシング回路12でダウンミックス処理を行う。なお、上記第1の窓掛け演算回路11では、窓掛けを行った後のオーバーラップ加算は行っていない。
【0103】
一方、遅延を受ける側では、IMDCT回路2により周波数軸/時間軸変換されたオーディオデータを第2のダウンミキシング回路13で直ちにダウンミックス処理し、そのダウンミックス処理後のチャネル数の少ないオーディオデータのみをディレイバッファ14に格納するようにする。
【0104】
上記ディレイバッファ14を使って第2のダウンミキシング回路13によりダウンミックスされた2チャネルのオーディオデータは、次に第2の窓掛け演算回路15に与えられ、ここで窓掛け演算が施される。そして、これにより得られる256点のサンプル値から成るPCMデータと、上記第1の窓掛け演算回路11での窓掛け演算により得られる256点のサンプル値から成るPCMデータとがオーバーラップ加算され、PCMバッファ10に格納される。
【0105】
このように、第4の実施形態では、ディレイバッファ9は128×5ワード分のメモリ容量が必要であったのに対して、第5の実施形態では、ディレイバッファ14は128×2ワード分のメモリ容量で済み、オーディオ復号装置全体のメモリ量を更に削減することができる。
【0106】
図10は、図9に示した第5の実施形態によるオーディオ復号装置のハードウェア構成を、処理の流れを意識して書き換えた機能ブロック図である。
以下、この図9および図10に基づいて第5の実施形態によるオーディオ復号装置の動作を簡単に説明する。
【0107】
図10のDMUX1で各チャネルのオーディオデータに分離されるとともに、各チャネルごとに逆量子化されたオーディオデータは、図9のワークバッファ3に一時的に格納される。
【0108】
ここで、図10のDMUX1と、IMDCT回路2、出力セレクタ回路16、第1の窓掛け演算回路11、第1のダウンミキシング回路12および第2のダウンミキシング回路13とを協調動作させると、ワークバッファ3内の第1および第2のバッファ#1、#2を用いるだけで、処理時間を変更せずに5チャネル分のデコード処理をパイプライン動作させることができる。
【0109】
また、カップリング方式を用いた場合でも、上記した2つのバッファ#1、#2に第3のバッファ#3を加えた3つのバッファを用いるだけで、5チャネル分のデコード処理をパイプライン動作させることができる。
【0110】
上記IMDCT回路2により周波数軸/時間軸変換されたオーディオデータは、出力セレクタ回路16に送られ、遅延させる必要のないオーディオデータと遅延させる必要のあるオーディオデータとに分けられる。なお、遅延させる必要のないオーディオデータは、次の式(5)で表される。
【0111】
【数5】
Figure 0003761639
【0112】
ただし、この式(5)において、x(k)はIMDCT処理された信号、y(m)はMDCT処理された信号、N は変換ブロック長、n=N/2 は位相項である。また、IMDCT処理された信号x(k)の数はN であり、MDCT処理された信号y(m)の数はN/2 である。
【0113】
この式(5)において、k= N/4〜N/2-1 については、j=N/2-k-1 とすると、コサイン関数の対称性を利用して次の式(6)のように変形することができる。この式(6)から明らかなように、本当にオリジナルな値は、k= 0〜N/4-1 の部分の値だけである。
【0114】
【数6】
Figure 0003761639
【0115】
また、遅延させる必要のあるオーディオデータは、次の式(7)で表される。これについても同様に式を変形すると、k= N/2〜3N/4-1 の部分だけがオリジナルな値である。したがって、ディレイバッファ14には、このk=N/2 〜 3N/4 -1のオリジナルな部分のデータのみを一時的に格納すれば良いことになる。
【0116】
【数7】
Figure 0003761639
【0117】
上記式(5)で示される遅延の必要のないオーディオデータは、第1の窓掛け演算回路11に送られる。そして、この第1の窓掛け演算回路11において、上記式(5)で示される値x(k)に窓関数がかけられた後、第1のダウンミキシング回路12でダウンミックス処理が施されて、それにより生成されるPCMデータがPCMバッファ10に格納される。
【0118】
次に示す式(8)は、上記第1の窓掛け演算回路11および第1のダウンミキシング回路12における処理の内容を示す式である。なお、この式(8)において、sch はダウンミックス前のチャネル番号を示し、dch はダウンミックス後のチャネル番号を示している。
【0119】
【数8】
Figure 0003761639
【0120】
また、上記式(7)で示される遅延の必要のあるオーディオデータは、第2のダウンミキシング回路13に送られる。そして、この第2のダウンミキシング回路13でダウンミックス処理(各チャネルデータの重ね書きの処理)が行われることにより、5チャネルから2チャネルにチャネル数が減らされて、ディレイバッファ14に格納される。この第2のダウンミキシング回路13における処理の内容を、次の式(9)に示す。
【0121】
【数9】
Figure 0003761639
【0122】
上記ディレイバッファ14に一時的に格納されたオーディオデータは、次に出力するPCMデータを生成するために使用される。そのための演算処理は、第2のダウンミキシング回路13におけるダウンミックス処理が終わって、最終的に2チャネルのオーディオデータがディレイバッファ14に格納された直後に第2の窓掛け演算回路15により行われる。この第2の窓掛け演算回路15における処理の演算式を、次の式(10)に示す。
【0123】
【数10】
Figure 0003761639
【0124】
以上の処理により生成されたPCMデータは、PCMバッファ10に一時的に格納された後、出力端子22を介して出力される。図9の例では、PCMバッファ10のメモリサイズは256×4ワードと示しているが、これはPCMデータを一定レートで出力するようにするために、PCMバッファ10を演算用とデータ出力用とでパイプライン的に用いているためである。よって、一定レートで出力することを考慮しない場合は、256×2ワードのメモリ容量でよい。
【0125】
以上第2〜第5の実施形態について詳しく説明してきたが、それぞれの実施形態においてどの程度バッファメモリの容量を削減することができたかを明確にするために、次の表1にまとめて示しておく。
【0126】
【表1】
Figure 0003761639
【0127】
なお、以上の説明では、第2の実施形態から第5の実施形態へと構成要件を順に限定していく場合について説明したが、各実施形態で説明した技術はそれぞれ独立に適用することが可能である。
【0128】
第2の実施形態によれば、上述したように、各チャネルごとの逆量子化処理と各チャネルごとの周波数軸/時間軸変換処理とをワークバッファを使ってパイプライン処理で行うようにしたので、逆量子化手段と周波数軸/時間軸変換手段とでパイプライン処理を行う際に1つのワークバッファを共用化することができるようになるとともに、そのワークバッファ内の同じバッファ領域を何回も使いまわしすることができるようになり、音質をほとんど損なうことなく、一連の復号処理を行うために必要なバッファメモリのメモリ容量を減らすことができる。
【0129】
第3の実施形態によれば、時間領域の情報に変換されたオーディオデータが持つコサイン関数の対称性を利用して、上記対称性を有する1組のデータ値のうち一方のデータ値から他方のデータ値を求めて窓掛け演算を行うようにしたので、上記窓掛け演算を行う際に使用するデータ遅延用のバッファメモリには、上記対称性を有する1組のデータ値のうち一方のデータ値だけを格納すれば良くなり、上記データ遅延用のバッファメモリの容量を削減することができる。これにより、音質をほとんど損なうことなく、一連の復号処理を行うために必要なバッファメモリのメモリ容量を減らすことができる。
【0130】
第4の実施形態によれば、窓掛け手段により窓かけ演算が行われて生成された複数チャネルのオーディオデータを直ちにダウンミックスし、ダウンミックス後の結果のみをデータ出力用のバッファメモリに格納するようにしたので、ダウンミキシング前のチャネル数の多いオーディオデータをそのままバッファメモリに格納していた従来例に比べて、ダウンミキシングにより少なくされたチャネル数の分だけデータ出力用のバッファメモリを用意すれば済むようになり、音質をほとんど損なうことなく、一連の復号処理を行うために必要なバッファメモリのメモリ容量を減らすことができる。
【0131】
第5の実施形態によれば、周波数軸/時間軸変換された複数チャネルのオーディオデータを直ちにダウンミックスし、ダウンミックス後の結果のみをデータ遅延用のバッファメモリに格納するようにしたので、ダウンミキシング前のチャネル数の多いオーディオデータをそのままデータ遅延用のバッファメモリに格納していた従来例に比べて、ダウンミキシングにより少なくされたチャネル数の分だけデータ遅延用のバッファメモリを用意すれば済むようになり、音質をほとんど損なうことなく、一連の復号処理を行うために必要なバッファメモリのメモリ容量を減らすことができる。
【0132】
【発明の効果】
以上詳しく説明したように、本発明によれば、周波数領域ダウンミキシング手段により処理された周波数オーディオデータを第1のバッファメモリに一時的に記憶し、記憶した周波数オーディオデータを周波数領域から時間領域へ変換して第2のバッファメモリに一時的に記憶するようにしたので、周波数オーディオデータを周波数領域から時間領域へ変換する際のデータのチャネル数を少なくすることができる。これにより、オーディオ復号装置におけるバッファメモリの容量を低減させることができる。
【図面の簡単な説明】
【図1】本発明の第1の実施形態によるオーディオ復号装置の具体的な構成例を示す図である。
【図2】図1に示したダウンミキシング/IMDCT回路の具体的な構成例を示す図である。
【図3】本発明の第2の実施形態によるオーディオ復号装置のハードウェア構成例を示す図である。
【図4】従来のオーディオ復号装置の動作を説明するための図である。
【図5】本発明の第2の実施形態によるオーディオ復号装置の動作を説明するための図である。
【図6】本発明の第3の実施形態によるオーディオ復号装置のハードウェア構成例を示す図である。
【図7】本発明の第3の実施形態によるオーディオ復号装置の特徴を説明するための図である。
【図8】本発明の第4の実施形態によるオーディオ復号装置のハードウェア構成例を示す図である。
【図9】本発明の第5の実施形態によるオーディオ復号装置のハードウェア構成例を示す図である。
【図10】図9に示した第5の実施形態によるオーディオ復号装置の機能構成を示すブロック図である。
【図11】オーディオ符号化装置の構成例を示す図である。
【図12】窓関数の形状の一例を示す図である。
【図13】MDCT処理の順序を示す図である。
【図14】従来のオーディオ復号装置の構成例を示す図である。
【図15】復号処理の際のオーバーラップ関係を示す図である。
【図16】図14に示した従来のオーディオ復号装置のハードウェア構成例を示す図である。
【符号の説明】
1 DMUX
2 IMDCT回路
3 ワークバッファ
4 窓掛け演算回路
5 ディレイバッファ
6 PCMバッファ
7 ダウンミキシング回路
8 窓掛け演算回路
9 ディレイバッファ
10 PCMバッファ
11 第1の窓掛け演算回路
12 第1のダウンミキシング回路
13 第2のダウンミキシング回路
14 ディレイバッファ
15 第2の窓掛け演算回路
16 出力セレクタ回路
21 符号化データ入力端子
22 オーディオデータ出力端子
31 デマルチプレクス回路
32 逆量子化回路
33 周波数軸/時間軸変換手段
34 ディレイバッファ
35 窓掛け演算回路
40 周波数領域ダウンミキシング手段
101 周波数領域ダウンミキシング回路
102、105 周波数軸/時間軸変換回路
103 加算/窓かけ回路
104 時間軸/周波数軸変換回路
111、112、113、114、115 メモリ回路[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an audio decoding apparatus that expands audio data that has been compressed using a data compression technique. For example, the present invention relates to an audio decoding apparatus that expands compressed audio data sent from a transmission path or compressed audio data reproduced from a recording medium. It relates to the device.
[0002]
[Prior art]
Conventionally, various methods for high-efficiency encoding of audio signals are known. For example, there is a method of converting an audio signal using time axis / frequency axis conversion for converting a time domain signal into a frequency domain signal and performing data compression adapted to human hearing in each frequency band. Examples of the time axis / frequency axis conversion method include a method using a subband filter or MDCT (Modified Discrete Cosine Transform).
[0003]
An overview of the subband filter coding method and MDCT coding method is described, for example, in pages 109 to 140 of “Adbances in Speech Signal Processing” published by MARCEL DEKKAR (New York), 1991, edited by FURUI & SONDHI. ing. Hereinafter, an audio encoding method using time axis / frequency axis conversion based on the MDCT encoding method will be described.
[0004]
FIG. 11 shows a configuration example of an encoding device using this MDCT encoding method. The encoding process in this encoding apparatus is as described below.
That is, the digital audio signal input via the input terminal 51 is converted from a time domain signal to a frequency domain signal at certain time intervals by the MDCT circuit 41. A data length corresponding to this time interval is called a transform block length.
[0005]
The frequency domain audio data output from the MDCT circuit 41 is quantized (variable length coding) by the quantization circuit 42, and then header information such as a sampling frequency is added by the multiplex circuit 43. It is output from the output terminal 52 as encoded data.
The time axis / frequency axis conversion process performed by the MDCT circuit 41 is described by the following equation (1).
[0006]
[Expression 1]
Figure 0003761639
[0007]
Here, x (k) is an input signal, w (k) is a window function, y (m) is an MDCT signal, N is a transform block length (samples), and n = N / 2 is a phase term. The window function w (k) is for correcting discontinuous signals that may occur at the end points of each transform block, and an example of the shape is shown in FIG. In Equation (1), the number of input signals x (k) to the MDCT circuit 41 is N. On the other hand, since m takes a value from 0 to N / 2-1, the MDCT signal y (m ) Is N / 2.
[0008]
In the MDCT processing, when the next block is converted after the current block is converted, the conversion is performed at a point where the sample is shifted from the current block to the next block by N / 2. That is, MDCT is continuously applied to each conversion block in such a manner that the samples overlap by N / 2 points. This is to prevent a discontinuous signal from being generated at the boundary between the transform blocks. This is shown in FIG. FIG. 13 shows an example when the value of the transform block length N is 512.
[0009]
In the example of FIG. 13, the audio data is sub-blocked every 256 samples for the sake of explanation. First, a window function is applied so as to cover sub-block 0 and sub-block 1, and MDCT is performed. Next, the sample is shifted by 256 points, a window function is applied so as to cover sub-block 1 and sub-block 2, and MDCT is performed. In this way, in the example of FIG. 13, MDCT of each block of 512 points is continuously performed while the samples overlap each other by 256 points.
[0010]
When the transform block length in the MDCT circuit 41 is constant, the above processing is performed. However, there is also known a method for increasing the coding efficiency by changing the transform block length according to the signal characteristics of the input signal. An example of such a variable block length MDCT encoding scheme is MPEG audio layer III in the international standard ISO IEC 11172-3.
[0011]
In this variable block length MDCT method, the conversion block length is temporally changed in accordance with the characteristics of the input signal. That is, when the characteristics of the input signal are stationary, encoding is performed using a long transform block length. On the other hand, when the characteristics of the input signal change suddenly, for example, when a pulse signal is input, encoding is performed using a short transform block length.
[0012]
There are various methods for changing the transform block length. When the long transform block length is an integer N, the method of setting the short transform block length to N / L (L = 2, 3,...) Is generally good. Used.
[0013]
In the encoding apparatus of FIG. 11, the transform block length determination circuit 44 determines the transform block length in accordance with the characteristics of the input audio signal, and supplies the determined transform block length information to the MDCT circuit 41 and the multiplex circuit 43. To do. The MDCT circuit 41 performs MDCT processing while temporally changing the transform block length in accordance with the transform block length information input from the transform block length determining circuit 44.
[0014]
On the other hand, when the transform block length information determined by the transform block length determination circuit 44 is sent to the multiplex circuit 43, the multiplex circuit 43 multiplexes the transform block length information and the quantized data, and encodes them. It is output from the output terminal 52 as data.
[0015]
By the way, as the digital audio signal input from the input terminal 51, it is possible to handle a multi-channel audio signal. For example, when a 5-channel audio signal used in a movie or the like is input, the processing in the MDCT circuit 41, the quantization circuit 42, and the transform block length determination circuit 44 is performed independently for each of the 5 channels. Then, after multiplexing the data for 5 channels in the multiplex circuit 43, it is output as encoded data.
[0016]
In this case, it is possible to improve sound quality at the same bit rate by performing encoding using the correlation between the channels. As such a processing method, a differential method and a coupling method are known. The former difference method is mainly used for low-frequency subband information (data in each transform block). By calculating the sum and difference of subband information of two channels, In this method, information is concentrated on a channel so that the amount of information can be reduced.
[0017]
On the other hand, the latter coupling method is mainly used for high-frequency subband information, and the amount of information can be reduced by sharing the value of the actual sample among a plurality of channels. This is the method. That is, in the high frequency region of the subband information, the power as sound is relatively small, and there is no problem in hearing even if one subband information is shared by a plurality of channels. Therefore, if there is a similar part in the subband information of the high frequency region in each channel, the information amount is reduced by sharing the information of the similar part.
[0018]
Next, FIG. 14 shows an example of a conventional audio decoding apparatus based on the MDCT method. A conventional decoding technique for decoding a plurality of channels of audio data will be described below with reference to FIG.
[0019]
In FIG. 14, encoded audio data is input to the demultiplexing circuit 31 via the input terminal 21. In the demultiplexing circuit 31, the input encoded data is separated into multiplexed audio data of multiple channels and transform block length information.
[0020]
The audio data of each channel output by the demultiplex circuit 31 is subjected to inverse quantization processing for each channel in the inverse quantization circuit 32, and the processing result is input to the IMDCT (Inverse MDCT) circuit 33. . Here, the inverse quantization process refers to obtaining the bit length of each variable length encoded sample data and identifying each sample data. The conversion block length information separated by the demultiplexing circuit 31 is also input to the IMDCT circuit 33.
[0021]
In this IMDCT circuit 33, IMDCT processing is performed for each channel based on the input conversion block length information. The frequency axis / time axis conversion process performed by the IMDCT circuit 33 is described by the following equation (2).
[0022]
[Expression 2]
Figure 0003761639
[0023]
Here, x (k) is an IMDCT-processed signal, y (m) is an MDCT-processed signal, N is a transform block length, and n = N / 2 is a phase term. The number of IMDCT-processed signals x (k) is N 1, and the number of MDCT-processed signals y (m) is N / 2.
[0024]
The signal subjected to the IMDCT processing based on the equation (2) is temporarily stored in the delay buffer 34 and then subjected to a windowing operation by the windowing operation circuit 35. The windowing operation circuit 35 applies a window function having the same shape as that in the MDCT process (illustrated in FIG. 12), and further adds the data of the overlapping portion between the first half of the current block and the second half of the previous block. Reconstruct the audio signal. This is because, when MDCT processing is performed, samples are overlapped and converted by N / 2 points, and aliasing occurs unless addition is performed.
[0025]
FIG. 15 shows the state of overlap at this time. In this example, first, 256 points overlapping each other in block 0 and block 1 each having 512 samples are added to reconstruct a 256-point audio signal. Next, a portion where only 256 points overlap between block 1 and block 2 is added, and the audio signal of the next 256 points is reconstructed. Similarly, the audio signal is reconstructed by 256 points.
[0026]
By the way, when audio data of a plurality of channels is encoded, if the audio output speaker on the decoding side has a smaller number of channels than the number of encoded channels, a down-mixing process is performed. There are things to do. The down-mixing process is a process for creating audio data having a smaller number of channels from audio data of a plurality of channels. An example of this processing is described by the following equation (3).
[0027]
[Equation 3]
Figure 0003761639
[0028]
Here, x [ch] [n] is an input signal corresponding to channel ch, y [n] is a signal of one channel that is downmixed, and α [ch] is a coefficient for downmixing corresponding to channel ch. , M indicates the number of target channels to be downmixed.
[0029]
For example, an audio signal used in a movie or the like may be encoded with 5 channels of audio data, but a general home audio device can often output only 2 channels. In this case, the time domain down-mixing circuit 36 performs the down-mixing process shown in the equation (3) twice to create 2-channel audio from 5-channel audio.
[0030]
Of course, when all the encoded audio data of the number of channels can be output on the decoding side, it is not necessary to perform the downmixing process. In this case, no processing is performed in the downmixing circuit 36, and the audio data subjected to the windowing by the windowing calculation circuit 35 is output from the output terminal 22 as it is.
[0031]
FIG. 16 is a hardware configuration diagram showing the conventional audio decoding apparatus shown in FIG. 14 in more detail in consideration of the amount of memory.
FIG. 16 shows an example of handling audio data of 5 channels, and describes the memory amount when the conversion block length is 512 points. The five channels are a left channel Lch, a center channel Cch, a right channel Rch, a rear left channel LSch, and a rear right channel RSch, respectively.
[0032]
In FIG. 16, the audio data of each channel dequantized through the processing in the demultiplex circuit 31 and the dequantization circuit 32 is stored in the dequantization buffer 37. The IMDCT circuit (frequency axis / time axis conversion circuit) 33 performs the calculation of the equation (2) for each channel on the inverse quantized data stored in the inverse quantization buffer 37, and The calculation result is stored in the time axis information buffer 38.
[0033]
Next, the audio data of each channel stored in the time axis information buffer 38 is given to a windowing operation circuit (addition / windowing circuit) 35. In the windowing operation circuit 35, after the windowing operation is executed, the data of the first half of the current block and the data of the second half of the previous block stored in the delay buffer 34 are overlap-added. .
[0034]
The result of overlap addition by the windowing operation circuit 35 is stored in the PCM buffer 39. The data of the latter half of the current block is stored in the delay buffer 34 after the windowing operation and used for overlap addition in the next block.
[0035]
Next, when down-mixing processing is required, the audio data of each channel is read from the PCM buffer 39 by the time-domain down-mixing circuit 36, and the down-mixing processing shown in Expression (3) is executed. The result of the down-mixing process in this way is output via the output terminal 22.
[0036]
[Problems to be solved by the invention]
As shown in FIG. 16, in the conventional audio decoding apparatus, it is necessary to provide buffer memories such as an inverse quantization buffer 37, a time axis information buffer 38, a delay buffer 34, and a PCM buffer 39. The memory capacity of the inverse quantization buffer 37, the time axis information buffer 38, and the delay buffer 34 is at least 256 × 5 words, and the memory capacity of the PCM buffer 39 is at least 256 × 10 words.
[0037]
The reason why the PCM buffer 39 requires a memory capacity of 256 × 10 words is as follows. That is, in general, audio equipment is required to output PCM data at a constant rate. In order to satisfy this, it is necessary to perform a pipeline operation by doubling the buffer for storing data immediately after the calculation by the windowing calculation circuit 35 and for outputting the data at a constant rate. There is. Therefore, the memory capacity of the PCM buffer 39 is required for 256 × 5 × 2 words.
[0038]
That is, in the conventional audio decoding apparatus, a total memory capacity of 6400 words is required in each buffer memory of the inverse quantization buffer 37, the time axis information buffer 38, the delay buffer 34, and the PCM buffer 39, and a considerable amount of memory is required. There was a problem of need.
[0039]
The present invention has been made to solve such a problem, and an object of the present invention is to reduce the memory capacity of an audio decoding apparatus with almost no deterioration in sound quality. That is, an object of the present invention is to provide an inexpensive audio decoding apparatus capable of down-mixing by reducing the memory capacity necessary for performing a series of decoding processes.
[0040]
[Means for Solving the Problems]
An audio decoding apparatus according to the present invention is an audio decoding apparatus that decodes encoded data including frequency domain audio data that represents a plurality of channels of audio signals in the frequency domain through time axis / frequency axis conversion. Is a frequency domain downmixing means for processing the frequency domain audio data so as to mix the audio signals of the plurality of channels into a predetermined number of channels at a predetermined level ratio, and the frequency processed by the frequency domain downmixing means. A first buffer memory for temporarily storing area audio data, and a frequency axis / time axis conversion for converting the frequency domain audio data temporarily stored in the first buffer memory from the frequency domain to the time domain Means and the frequency axis / time axis conversion means Characterized in that it comprises a second buffer memory for temporarily storing the converted time-domain audio data into the area.
[0051]
DETAILED DESCRIPTION OF THE INVENTION
Embodiments of an audio decoding apparatus according to the present invention will be described below with reference to the drawings. A configuration example of the audio decoding apparatus according to the first embodiment is shown in FIG.
[0052]
In FIG. 1, encoded data input via an input terminal 21 is separated into audio data and transform block length information of a plurality of channels by a demultiplexing circuit 31. Since this audio data represents audio signals of a plurality of channels in the frequency domain, it is called frequency domain audio data.
[0053]
The frequency domain audio data of each channel separated by the demultiplexing circuit 31 is subjected to inverse quantization processing for each channel by the inverse quantization circuit 32 and input to the frequency domain downmixing means 40. Further, the transform block length information separated by the demultiplex circuit 31 is input to the frequency axis / time axis conversion means 33.
[0054]
Audio data (time domain audio data) representing time domain audio signals output from the frequency axis / time axis conversion means 33 is delayed by the delay buffer 34 and then input to the windowing operation circuit 35. A windowing operation is performed.
[0055]
FIG. 2 shows in more detail the portions corresponding to the frequency domain downmixing means 40 and the frequency axis / time axis converting means 33 of the audio decoding apparatus of the present embodiment shown in FIG.
The processing performed in the frequency domain downmixing means 40 and the frequency axis / time axis converting means 33 will be described below with reference to FIG.
[0056]
FIG. 2 also shows an example of handling audio data of 5 channels, similar to FIG. 16, and describes the memory amount when the conversion block length is 512 points. In FIG. 2, Lch is the left channel, Cch is the center channel, Rch is the right channel, LSch is the rear left channel, RSch is the rear right channel, Ldch is the left channel that is downmixed, and Rdch is the right channel that is downmixed The data area for each channel is shown.
[0057]
The data inversely quantized by the inverse quantization circuit 32 in FIG. 1 is stored in the first memory circuit 111 in FIG. Next, the frequency domain downmixing circuit 101 performs a downmixing process on the frequency domain audio data stored in the first memory circuit 111, and the result is stored in the second memory circuit 112. . The processing performed in the frequency domain downmixing circuit 101 is described by the following equation (4).
[0058]
[Expression 4]
Figure 0003761639
[0059]
Here, X [ch] [n] is the frequency domain input signal corresponding to the channel ch, Y [n] is the downmixed frequency domain signal, and α [ch] is the downmixing corresponding to the channel ch. Which is the same as that shown in equation (3). M represents the number of target channels to be downmixed.
[0060]
If the conversion block length is different between the channels to be subjected to the down-mixing process, first, the data of the channel different from the other channels is temporarily converted into time domain data by the frequency axis / time axis conversion circuit 105. The converted data is stored in the fifth memory circuit 115. After that, the time axis / frequency axis conversion circuit 104 performs conversion to the frequency domain again so as to align the conversion block length. As described above, when the down-mixing process is performed in the frequency domain, the conversion block lengths of the respective channels are made uniform. Thereby, it is possible to efficiently perform the down-mixing process in the frequency domain.
[0061]
For example, consider a case where encoding is performed using two types of transform block lengths, N and N / 2. In this case, the five channels to be subjected to the downmixing process may have two types of transform block lengths N and N / 2. At this time, the frequency axis / time axis conversion circuit 105 converts the data of the conversion block length N / 2 by two frequency axes / time axis conversion, and then the time axis / frequency axis conversion circuit 104 converts the data with the conversion block length N 2. Perform axis / frequency axis conversion so that the conversion block length between each channel is equal to N.
[0062]
Next, the frequency axis / time axis conversion circuit 102 converts the frequency domain audio data stored in the second memory circuit 112 into the time domain, and the conversion result is stored in the third memory. Stored in the circuit 113. Finally, the following processing is performed by the addition / windowing circuit 103.
[0063]
That is, the data of the first half of the current block is subjected to a windowing process, and then overlapped with the data of the second half of the previous block stored in the fourth memory circuit 114 to reconstruct the audio data. The The audio data reconstructed in this way is output via the output terminal 22. The data in the latter half of the current block is stored in the fourth memory circuit 114 after the windowing process.
[0064]
As shown in FIG. 2, the scale of each of the memory circuits 111 to 115 is 256 × 5 words for the first memory circuit 111, 256 × 2 words for the second and fourth memory circuits 112 and 114, respectively, The memory circuit 113 has 512 × 2 words, and the fifth memory circuit 115 has 512 words. In other words, since a total of 3840 words of memory is required in the present embodiment, it can be seen that the memory amount is reduced by 2560 words in the present embodiment as compared with the conventional example of FIG. Therefore, according to this embodiment, an audio decoding device capable of down-mixing can be configured at low cost.
[0065]
In the processing by the frequency domain down-mixing means and the frequency axis / time axis conversion means shown in FIG. 2, conversion block length mismatches between channels are subjected to frequency axis / time axis conversion and time axis / frequency axis conversion. It has been corrected. In addition, in a coding method using time axis / frequency axis conversion having a variable block length, a long transform block length with good frequency resolution and high coding efficiency is selected for most blocks, and a short transform block length is selected. There are only a few blocks. For this reason, inconsistency of transform block lengths is slightly generated during the down-mixing process.
[0066]
Regarding the processing amount of decoding, the processing amount locally increases in the block where the mismatch of the transform block length between channels occurs, but the processing amount decreases conversely in most other blocks. The amount can be reduced by about 20% compared to the conventional case.
[0067]
Further, in order to configure a cheaper audio decoding apparatus, the frequency axis / time axis conversion circuit 105, the fifth memory circuit 115 and the time axis / frequency axis conversion circuit 104 in FIG. If the block lengths do not match, a process for excluding the mismatched channels from the target of the downmixing process may be performed. Even in this case, an audio decoding device dedicated to downmixing can be configured at low cost, and sound quality sufficient for that can be obtained, and the circuit scale and decoding processing amount can be further reduced.
[0068]
In the present embodiment, MDCT has been described as an example of time axis / frequency axis conversion, but the above discussion can be easily applied to cases using other types of time axis / frequency axis conversion. Is possible.
[0069]
As described above, according to the present embodiment, in the audio decoding apparatus that decodes audio data of a plurality of channels encoded in the frequency domain using time axis / frequency axis conversion, the downmixing process is performed in the frequency domain. Since the frequency axis / time axis conversion process is performed later, the number of data channels handled in the frequency axis / time axis conversion process after the down mixing process can be reduced by the down mixing process. / The number of memory circuits required for temporarily storing data in the time axis conversion process can be reduced. In addition, since the number of data channels handled in the frequency axis / time axis conversion process can be reduced, the amount of decoding processing can be reduced as a whole, thereby enabling down-mixing without significantly degrading sound quality. An inexpensive audio decoding device can be realized.
[0070]
Further, according to another feature of the present embodiment, the time axis / frequency axis conversion process conversion is performed between each target channel when the audio data of a plurality of channels is downmixed in the frequency domain by the frequency domain downmixing unit. When the block lengths are different, the downmixing process is performed after the conversion block lengths of all the channels are combined, so that the downmixing process in the frequency domain can be efficiently performed.
[0071]
Further, according to other features of the present embodiment, when the transform block length does not match between the channels, the mismatched channel is excluded from the downmix processing target, thereby simplifying the device configuration. In addition, it is possible to obtain a sufficient sound quality for an inexpensive audio decoding device that can be downmixed, and to further reduce the circuit scale and the decoding processing amount without significantly reducing the sound quality. Can do.
[0072]
Next, a second embodiment of the audio decoding device according to the present invention will be described in detail with reference to the drawings.
FIG. 3 is a diagram showing a hardware configuration example of the audio decoding device according to the second embodiment, which is a modification of the configuration of FIG. 16 shown as a conventional example.
[0073]
Note that FIG. 16 shows the demultiplexing circuit 31 and the inverse quantization circuit 32 separately, but FIG. 3 shows them together as DMUX1. That is, the DMUX 1 of the present embodiment simultaneously performs the multiplexed data separation process and the dequantization process of the separated audio data of each channel. FIG. 3 also shows an example of handling audio data of 5 channels, as in FIG. 16, and shows the amount of memory when the conversion block length is 512 points.
[0074]
In the audio decoding apparatus according to the second embodiment shown in FIG. 3, the capacity of the buffer memory can be reduced by operating the DMUX 1 and the IMDCT circuit 2 in a coordinated manner.
[0075]
That is, in the conventional example of FIG. 16, two buffer memories of 256 × 5 words are provided before and after the IMDCT circuit 33, but in this embodiment, pipeline processing is performed by the DMUX 1 and the IMDCT circuit 2. By going and reusing the work buffer 3, the memory capacity of the work buffer 3 can be 256 × 3 words. Note that pipeline processing means that the same memory is used in common in a plurality of processes.
[0076]
This will be described in detail below with reference to FIGS. That is, in the conventional example shown in FIG. 16, as shown in FIG. 4, first, inverse quantization processing is performed on five channels of the left channel Lch, the center channel Cch, the right channel Rch, the rear left channel LSch, and the rear right channel RSch. Then, the inverse quantization data of each channel obtained thereby is stored in the inverse quantization buffer 37.
[0077]
After the dequantized data for five channels is stored in the dequantized buffer 37, the IMDCT circuit 33 then performs frequency axis / time axis conversion processing on the dequantized data for the five channels for each channel. The time domain audio data obtained thereby is stored in the time axis information buffer 38 for each channel. Therefore, conventionally, a total of 10 sets of buffer memories were required.
[0078]
On the other hand, in this embodiment, as shown in FIG. 5, when the audio data of the left channel Lch is first dequantized and stored in the first buffer # 1 in the work buffer 3 by the DMUX 1, In addition, the dequantized data stored in the first buffer # 1 is frequency axis / time axis converted by the IMDCT circuit 2. Meanwhile, the DMUX 1 performs the inverse quantization process for the next center channel Cch, and stores the inversely quantized data obtained thereby in the second buffer # 2.
[0079]
Further, the IMDCT circuit 2 performs the inverse quantization stored in the next second buffer # 2 as soon as the frequency axis / time axis conversion processing for the inversely quantized data stored in the first buffer # 1 is completed. Frequency axis / time axis conversion processing is performed on the data. Meanwhile, DMUX1 performs inverse quantization processing on the next right channel Rch, and stores the inversely quantized data obtained thereby again in the first buffer # 1.
[0080]
Thus, by operating the DMUX 1 and the IMDCT circuit 2 in a pipeline, basically only the first buffer # 1 and the second buffer # 2 are provided as work buffers 3 used in the pipeline processing. I'm trying to do it.
[0081]
In the present embodiment, as shown in FIG. 3, a third buffer # 3 is provided in the work buffer 3 in addition to the first buffer # 1 and the second buffer # 2. The third buffer # 3 is used to store the coupling data described in the conventional example.
[0082]
That is, in the coupling method, information of a similar part is shared by high-frequency audio data in each channel, so that a buffer memory for holding the shared part of the data is separately provided. It is necessary. Here, the memory capacity of the third buffer # 3 is set to 256 words. However, as long as it has at least the maximum capacity that can be shared (capacity determined by the encoding method; 219 words in this embodiment). good.
[0083]
As described above, in this embodiment, the buffer memory used in the multiplexed data separation process and inverse quantization process in the DMUX 1 and the frequency axis / time axis conversion process in the IMDCT circuit 2 is the first in the work buffer 3. ~ Three sets of third buffers # 1 to # 3 are required, and the memory capacity is 256 × 3 words. Therefore, compared with the conventional example (FIG. 16), which requires a memory capacity of 256 × 10 words for the same processing, the total memory amount can be greatly reduced.
[0084]
Next, a third embodiment of the present invention will be described. FIG. 6 is a diagram illustrating a hardware configuration example of the audio decoding device according to the third embodiment, which is a further modification of the configuration according to the second embodiment illustrated in FIG. 3.
[0085]
The audio decoding apparatus shown in FIG. 6 uses the symmetry of the cosine function of the audio data frequency-frequency / time-axis converted by the IMDCT circuit 2, and uses 256 points of sample values of the audio data converted to time information. Of these, by storing only the original value in the delay buffer 9, the capacity of the buffer memory can be further reduced.
[0086]
This will be described in detail below with reference to FIG. 7, FIG. 13, and FIG. The transform block length in the present embodiment is 512 points, and the 512-point audio data transformed into the time domain is subjected to a windowing operation next, but as shown in FIG. At the time of conversion, the windowing is performed while the sample values are overlapped by shifting 256 points. That is, the sample value of 512 points is such that the sample value of 256 points is reused twice.
[0087]
Therefore, in the third embodiment, the memory capacity of the delay buffer 9 can be reduced by devising how to reuse the 256 sample values. That is, as shown in FIG. 7, the original 256 sample values (portions (1) and (2)) are arranged in the middle of the transform block length. Then, before performing the windowing operation, the sample values of the portions {circle around (1)} and {circle around (2)} that are symmetrical to the sample values of the portions {circle around (1)} and {circle around (2)} are obtained using the symmetry of the cosine function. Thus, 512 sample values are obtained.
[0088]
In this case, as described with reference to FIG. 15, among the 512 sample values obtained as described above, the 256 sample values belonging to the first half A are the overruns in the windowing operation circuit 8 in FIG. 6. Whereas it is used as it is for the lap addition, the sample values of 256 points belonging to the second half B are used for the overlap addition after receiving a delay of a predetermined time. That is, only 256 sample values belonging to the second half B receive a delay of a predetermined time.
[0089]
Here, among the 256 sample values belonging to the latter half portion B, the sample value {circle over (2)} is obtained by calculation from the original sample value {circle around (2)}. Therefore, if the 128 sample values in the portion (2) are stored in the delay buffer 9 and delayed by a predetermined time, the 512-point sample values can be reproduced to perform the windowing operation. Become.
[0090]
Note that after the windowing operation circuit 8 shown in FIG. 6 obtains the sample values of the (1) ′ and (2) ′ portions having symmetry from the sample values of the portions (1) and (2) above. If windowing is performed, there is no practical problem.
[0091]
As described above, in the third embodiment, 128 sample values that are original portions of audio data subjected to frequency axis / time axis conversion may be stored in the delay buffer 9. Thus, in the second embodiment of FIG. 3, the delay buffer 5 requires a memory capacity of 256 × 5 words, whereas in the third embodiment, a memory capacity of 128 × 5 words. Therefore, the memory capacity of the entire audio decoding device can be further reduced.
[0092]
Next, a fourth embodiment of the present invention will be described. FIG. 8 is a diagram showing a hardware configuration example of the audio decoding apparatus according to the fourth embodiment, which is a further modification of the configuration according to the third embodiment shown in FIG.
[0093]
The audio decoding apparatus shown in FIG. 8 immediately downmixes 5-channel PCM data generated by windowing by the windowing arithmetic circuit 8 and stores only the result after downmixing in the PCM buffer 10. By doing so, the capacity of the buffer memory can be further reduced.
[0094]
That is, since the DMUX 1 and the IMDCT circuit 2 in FIG. 8 perform processing in a pipeline manner, the windowing arithmetic circuit 8 that performs windowing using the audio data obtained thereby causes PCM data for five channels to be received. Generated intermittently. In this case, in the second and third embodiments described above, the PCM data for the five channels is stored in the PCM buffer 6 as it is, and then downmixed to two channels by the downmixing circuit 7 and output. It was.
[0095]
In contrast, in the fourth embodiment, the 5-channel PCM data generated by the windowing operation circuit 8 is immediately downmixed to 2 channels. The downmixed PCM data for only two channels is stored in the PCM buffer 10.
[0096]
Thereby, in the second and third embodiments, the PCM buffer 6 requires a memory capacity of 256 × 10 words, whereas in the fourth embodiment, the PCM buffer 10 has 256 × 4 words. Therefore, the memory capacity of the entire audio decoding apparatus can be further reduced.
[0097]
In FIG. 8, the reason why the downmixing circuit 7 and the PCM buffer 10 are connected by a double-pointed arrow is as follows. That is, the downmix processing is not performed at once after all the 5-channel PCM data is prepared, but is performed by overwriting the PCM data of each channel little by little.
[0098]
Accordingly, the data once stored in the PCM buffer 10 is read by the downmixing circuit 7, and the downmixed value is added to the read value, and the added value is stored again in the same storage area in the PCM buffer 10. Processing to do so is necessary. The double-headed arrow in FIG. 8 indicates such overwriting processing.
[0099]
Next, a fifth embodiment of the present invention will be described. FIG. 9 is a diagram showing a hardware configuration example of the audio decoding device according to the fifth embodiment, which is a further modification of the configuration according to the fourth embodiment shown in FIG.
[0100]
In the fourth embodiment, after the downmix process is performed, the PCM data with a small number of channels obtained thereby is stored in the PCM buffer 10, thereby reducing the amount of memory of the PCM buffer 10. Only had to be able to reduce. The same can be said for the relationship with the delay buffer 9.
[0101]
Therefore, in the fifth embodiment shown in FIG. 9, processing is performed as follows. That is, the audio data converted into information in the time domain by the IMDCT circuit 2 includes data in a part not subjected to delay (256 sample values belonging to the first half A in FIG. 7) and data in a part subjected to delay (FIG. 7). The sample value of 256 points belonging to the second half portion B of FIG.
[0102]
On the side not subjected to the delay, as usual, the first windowing operation circuit 11 performs the windowing operation, and then the first downmixing circuit 12 performs the downmix processing. The first windowing arithmetic circuit 11 does not perform overlap addition after windowing.
[0103]
On the other hand, on the delay receiving side, the audio data that has been frequency-axis / time-axis converted by the IMDCT circuit 2 is immediately downmixed by the second downmixing circuit 13, and only the audio data having a small number of channels after the downmixing process. Is stored in the delay buffer 14.
[0104]
The two-channel audio data downmixed by the second downmixing circuit 13 using the delay buffer 14 is then supplied to the second windowing operation circuit 15 where the windowing operation is performed. Then, the PCM data composed of the 256-point sample values obtained by this and the PCM data composed of the 256-point sample values obtained by the windowing operation in the first windowing operation circuit 11 are overlap-added, Stored in the PCM buffer 10.
[0105]
As described above, in the fourth embodiment, the delay buffer 9 requires a memory capacity of 128 × 5 words, whereas in the fifth embodiment, the delay buffer 14 has a capacity of 128 × 2 words. The memory capacity is sufficient, and the memory capacity of the entire audio decoding apparatus can be further reduced.
[0106]
FIG. 10 is a functional block diagram in which the hardware configuration of the audio decoding device according to the fifth embodiment shown in FIG. 9 is rewritten in consideration of the flow of processing.
The operation of the audio decoding apparatus according to the fifth embodiment will be briefly described below with reference to FIGS.
[0107]
Audio data that is separated into audio data of each channel by DMUX 1 in FIG. 10 and dequantized for each channel is temporarily stored in work buffer 3 in FIG.
[0108]
Here, when the DMUX 1 in FIG. 10 and the IMDCT circuit 2, the output selector circuit 16, the first windowing arithmetic circuit 11, the first downmixing circuit 12, and the second downmixing circuit 13 are operated in cooperation, By using only the first and second buffers # 1 and # 2 in the buffer 3, the decoding process for five channels can be pipelined without changing the processing time.
[0109]
Even when the coupling method is used, the decoding process for five channels is pipelined only by using the three buffers obtained by adding the third buffer # 3 to the two buffers # 1 and # 2 described above. be able to.
[0110]
The audio data subjected to frequency axis / time axis conversion by the IMDCT circuit 2 is sent to the output selector circuit 16 and divided into audio data that does not need to be delayed and audio data that needs to be delayed. The audio data that does not need to be delayed is expressed by the following equation (5).
[0111]
[Equation 5]
Figure 0003761639
[0112]
In Equation (5), x (k) is an IMDCT-processed signal, y (m) is an MDCT-processed signal, N is a transform block length, and n = N / 2 is a phase term. The number of IMDCT-processed signals x (k) is N 1, and the number of MDCT-processed signals y (m) is N / 2.
[0113]
In this equation (5), for k = N / 4 to N / 2-1, if j = N / 2-k-1, the following equation (6) is obtained by using the symmetry of the cosine function. Can be transformed into As is apparent from this equation (6), the only original value is the value in the portion of k = 0 to N / 4-1.
[0114]
[Formula 6]
Figure 0003761639
[0115]
Audio data that needs to be delayed is expressed by the following equation (7). In this case as well, if the equation is modified in the same way, only the part of k = N / 2 to 3N / 4-1 is the original value. Therefore, only the original data of k = N / 2 to 3N / 4 −1 need be temporarily stored in the delay buffer 14.
[0116]
[Expression 7]
Figure 0003761639
[0117]
The audio data that is not required to be delayed as expressed by the above equation (5) is sent to the first windowing arithmetic circuit 11. In the first windowing operation circuit 11, the window function is applied to the value x (k) expressed by the above equation (5), and then the first downmixing circuit 12 performs downmix processing. The PCM data generated thereby is stored in the PCM buffer 10.
[0118]
The following expression (8) is an expression indicating the contents of processing in the first windowing arithmetic circuit 11 and the first downmixing circuit 12. In this equation (8), sch represents the channel number before downmixing, and dch represents the channel number after downmixing.
[0119]
[Equation 8]
Figure 0003761639
[0120]
Also, the audio data that needs to be delayed as expressed by the above equation (7) is sent to the second downmixing circuit 13. The second downmixing circuit 13 performs downmix processing (overwriting processing of each channel data), whereby the number of channels is reduced from 5 channels to 2 channels and stored in the delay buffer 14. . The content of the processing in the second downmixing circuit 13 is shown in the following equation (9).
[0121]
[Equation 9]
Figure 0003761639
[0122]
The audio data temporarily stored in the delay buffer 14 is used to generate PCM data to be output next. The arithmetic processing for that purpose is performed by the second windowing arithmetic circuit 15 immediately after the downmix processing in the second downmixing circuit 13 is finished and finally the two-channel audio data is stored in the delay buffer 14. . An arithmetic expression for processing in the second windowing arithmetic circuit 15 is shown in the following expression (10).
[0123]
[Expression 10]
Figure 0003761639
[0124]
The PCM data generated by the above processing is temporarily stored in the PCM buffer 10 and then output via the output terminal 22. In the example of FIG. 9, the memory size of the PCM buffer 10 is shown as 256 × 4 words. This is because the PCM buffer 10 is used for calculation and data output in order to output PCM data at a constant rate. This is because it is used in a pipeline. Therefore, if not considering output at a constant rate, a memory capacity of 256 × 2 words is sufficient.
[0125]
The second to fifth embodiments have been described in detail above. In order to clarify how much the capacity of the buffer memory can be reduced in each embodiment, the following Table 1 collectively shows. deep.
[0126]
[Table 1]
Figure 0003761639
[0127]
In the above description, the case where the configuration requirements are sequentially limited from the second embodiment to the fifth embodiment has been described. However, the technology described in each embodiment can be applied independently. It is.
[0128]
According to the second embodiment, as described above, the inverse quantization process for each channel and the frequency axis / time axis conversion process for each channel are performed by pipeline processing using a work buffer. When performing pipeline processing between the inverse quantization means and the frequency axis / time axis conversion means, one work buffer can be shared, and the same buffer area in the work buffer can be used many times. Thus, the memory capacity of the buffer memory necessary for performing a series of decoding processes can be reduced with almost no loss in sound quality.
[0129]
According to the third embodiment, by utilizing the symmetry of the cosine function of the audio data converted into the information in the time domain, one data value of the set of data values having the symmetry is changed from the other data value to the other. Since the windowing operation is performed by obtaining the data value, the data delay buffer memory used when performing the windowing operation has one data value of the set of data values having the symmetry. Thus, the capacity of the buffer memory for data delay can be reduced. As a result, the memory capacity of the buffer memory necessary for performing a series of decoding processes can be reduced without substantially impairing the sound quality.
[0130]
According to the fourth embodiment, the audio data of a plurality of channels generated by the windowing operation performed by the windowing means is immediately downmixed, and only the result after the downmixing is stored in the data output buffer memory. As a result, a buffer memory for data output is provided for the number of channels reduced by downmixing compared to the conventional example in which audio data with a large number of channels before downmixing is stored in the buffer memory as it is. As a result, the memory capacity of the buffer memory necessary for performing a series of decoding processes can be reduced with almost no loss in sound quality.
[0131]
According to the fifth embodiment, audio data of a plurality of channels subjected to frequency axis / time axis conversion is immediately downmixed, and only the result after downmixing is stored in the buffer memory for data delay. Compared to the conventional example in which audio data with a large number of channels before mixing is stored in the buffer memory for data delay as it is, it is only necessary to prepare buffer memories for data delay corresponding to the number of channels reduced by down-mixing. Thus, it is possible to reduce the memory capacity of the buffer memory necessary for performing a series of decoding processes with almost no deterioration in sound quality.
[0132]
【The invention's effect】
As described above in detail, according to the present invention, the frequency audio data processed by the frequency domain downmixing means is temporarily stored in the first buffer memory, and the stored frequency audio data is transferred from the frequency domain to the time domain. Since the data is converted and temporarily stored in the second buffer memory, the number of data channels when frequency audio data is converted from the frequency domain to the time domain can be reduced. Thereby, the capacity of the buffer memory in the audio decoding device can be reduced.
[Brief description of the drawings]
FIG. 1 is a diagram illustrating a specific configuration example of an audio decoding device according to a first embodiment of the present invention.
FIG. 2 is a diagram illustrating a specific configuration example of a downmixing / IMDCT circuit illustrated in FIG. 1;
FIG. 3 is a diagram illustrating a hardware configuration example of an audio decoding device according to a second embodiment of the present invention.
FIG. 4 is a diagram for explaining the operation of a conventional audio decoding apparatus.
FIG. 5 is a diagram for explaining an operation of the audio decoding apparatus according to the second embodiment of the present invention.
FIG. 6 is a diagram illustrating a hardware configuration example of an audio decoding device according to a third embodiment of the present invention.
FIG. 7 is a diagram for explaining the characteristics of an audio decoding device according to a third embodiment of the present invention;
FIG. 8 is a diagram illustrating a hardware configuration example of an audio decoding device according to a fourth embodiment of the present invention.
FIG. 9 is a diagram illustrating a hardware configuration example of an audio decoding device according to a fifth embodiment of the present invention.
10 is a block diagram showing a functional configuration of an audio decoding device according to the fifth embodiment shown in FIG. 9. FIG.
FIG. 11 is a diagram illustrating a configuration example of an audio encoding device.
FIG. 12 is a diagram illustrating an example of the shape of a window function.
FIG. 13 is a diagram illustrating an order of MDCT processing.
FIG. 14 is a diagram illustrating a configuration example of a conventional audio decoding device.
FIG. 15 is a diagram illustrating an overlap relationship during decoding processing.
16 is a diagram illustrating a hardware configuration example of the conventional audio decoding apparatus illustrated in FIG.
[Explanation of symbols]
1 DMUX
2 IMDCT circuit
3 Work buffer
4 Window arithmetic circuit
5 Delay buffer
6 PCM buffer
7 Downmixing circuit
8 Windowing circuit
9 Delay buffer
10 PCM buffers
11 First windowing arithmetic circuit
12 First down-mixing circuit
13 Second down-mixing circuit
14 Delay buffer
15 Second windowing arithmetic circuit
16 output selector circuit
21 Encoded data input terminal
22 Audio data output terminal
31 Demultiplexing circuit
32 Inverse quantization circuit
33 Frequency axis / time axis conversion means
34 Delay buffer
35 Window arithmetic circuit
40 Frequency domain down-mixing means
101 Frequency domain downmixing circuit
102, 105 Frequency axis / time axis conversion circuit
103 Addition / windowing circuit
104 Time axis / frequency axis conversion circuit
111, 112, 113, 114, 115 Memory circuit

Claims (6)

複数チャネルのオーディオ信号を時間軸/周波数軸変換を介して周波数領域で表す周波数領域オーディオデータを含む符号化データを復号するオーディオ復号装置であって、
上記オーディオ復号装置は、上記複数チャネルのオーディオ信号を所定のレベル比で所定のチャネル数にミキシングするように、上記周波数領域オーディオデータを処理する周波数領域ダウンミキシング手段と、
上記周波数領域ダウンミキシング手段により処理された周波数領域オーディオデータを一時的に記憶する第1のバッファメモリと、
上記第1のバッファメモリに一時的に記憶された周波数領域オーディオデータを、周波数領域から時間領域へと変換する周波数軸/時間軸変換手段と、
上記周波数軸/時間軸変換手段により時間領域に変換された時間領域オーディオデータを一時的に記憶する第2のバッファメモリとを含むことを特徴とするオーディオ復号装置。
An audio decoding device for decoding encoded data including frequency domain audio data representing a multi-channel audio signal in a frequency domain through time axis / frequency axis conversion,
The audio decoding device comprises: frequency domain downmixing means for processing the frequency domain audio data so as to mix the plurality of channels of audio signals into a predetermined number of channels at a predetermined level ratio;
A first buffer memory for temporarily storing frequency domain audio data processed by the frequency domain downmixing means;
Frequency axis / time axis conversion means for converting the frequency domain audio data temporarily stored in the first buffer memory from the frequency domain to the time domain;
An audio decoding device comprising: a second buffer memory for temporarily storing time-domain audio data converted into the time domain by the frequency axis / time axis conversion means.
上記周波数領域オーディオデータは、上記複数チャネルのオーディオ信号の可変数のサンプルを表すデータを含む可変長のデータブロックを有し、
上記符号化データは、各データブロックの長さを表すブロック長情報を更に含み、
上記オーディオ復号装置は、上記符号化データから上記周波数領域オーディオデータと上記ブロック長情報とを分離する分離手段を更に含み、
上記周波数軸/時間軸変換手段は、上記分離手段により分離されたブロック長情報に基づいて、上記周波数領域ダウンミキシング手段により処理された周波数領域オーディオデータを周波数領域から時間領域へと変換することを特徴とする請求項1に記載のオーディオ復号装置。
The frequency domain audio data has a variable length data block including data representing a variable number of samples of the multi-channel audio signal;
The encoded data further includes block length information indicating the length of each data block,
The audio decoding device further includes separation means for separating the frequency domain audio data and the block length information from the encoded data,
The frequency axis / time axis converting means converts the frequency domain audio data processed by the frequency domain downmixing means from the frequency domain to the time domain based on the block length information separated by the separating means. The audio decoding device according to claim 1, wherein:
上記周波数領域ダウンミキシング手段が処理すべきデータブロックの長さが上記複数チャネルのオーディオ信号について異なる場合に、上記複数チャネルのオーディオ信号のデータブロックの長さを一致させた後で該データブロックを上記周波数領域ダウンミキシング手段に供給するブロック長整合手段を更に含むことを特徴とする請求項2に記載のオーディオ復号装置。  When the lengths of the data blocks to be processed by the frequency domain downmixing unit are different for the audio signals of the plurality of channels, the data blocks are changed to the same after the lengths of the data blocks of the audio signals of the plurality of channels are matched. 3. The audio decoding apparatus according to claim 2, further comprising block length matching means for supplying to the frequency domain downmixing means. 処理すべき少なくとも1つのチャネルのオーディオ信号についてのデータブロックの長さが、処理すべき他のチャネルのオーディオ信号についてのデータブロックの長さと異なる場合に、上記処理すべき少なくとも1つのチャネルのオーディオ信号についてのデータブロックに含まれる周波数領域オーディオデータを周波数領域から時間領域へと変換する第2の周波数軸/時間軸変換手段と、
上記処理すべき他のチャネルのオーディオ信号についてのデータブロックの長さと等しい変換ブロック長で、上記第2の周波数軸/時間軸変換手段により時間領域に変換された時間領域オーディオデータを、時間領域から周波数領域へと変換し、変換した周波数領域オーディオデータを上記周波数領域ダウンミキシング手段に供給する時間軸/周波数軸変換手段とを含むことを特徴とする請求項3に記載のオーディオ復号装置。
The audio signal of at least one channel to be processed if the length of the data block for the audio signal of at least one channel to be processed is different from the length of the data block for the audio signal of another channel to be processed Second frequency axis / time axis conversion means for converting frequency domain audio data included in the data block for frequency domain from time domain to time domain;
The time domain audio data converted into the time domain by the second frequency axis / time axis converting means with a transform block length equal to the length of the data block for the audio signal of the other channel to be processed from the time domain. 4. The audio decoding apparatus according to claim 3, further comprising: a time axis / frequency axis converting unit that converts the frequency domain audio data into the frequency domain and supplies the converted frequency domain audio data to the frequency domain downmixing unit.
上記周波数領域ダウンミキシング手段は、処理すべき少なくとも1つのチャネルのオーディオ信号についてのデータブロックの長さが処理すべき他のチャネルのオーディオ信号についてのデータブロックの長さと異なる場合に、上記少なくとも1つのチャネルのオーディオ信号をミキシングの対象から除外することを特徴とする請求項2に記載のオーディオ復号装置。  The frequency domain down-mixing means may be configured such that the length of the data block for the audio signal of at least one channel to be processed is different from the length of the data block for the audio signal of another channel to be processed. 3. The audio decoding apparatus according to claim 2, wherein the audio signal of the channel is excluded from the object of mixing. 上記周波数軸/時間軸変換手段は、MDCT(Modified Discrete Cosine Transform)を使用して上記周波数領域オーディオデータを周波数領域から時間領域へと変換することを特徴とする請求項1に記載のオーディオ復号装置。  2. The audio decoding apparatus according to claim 1, wherein the frequency axis / time axis conversion unit converts the frequency domain audio data from the frequency domain to the time domain using MDCT (Modified Discrete Cosine Transform). .
JP27881096A 1995-09-29 1996-09-30 Audio decoding device Expired - Lifetime JP3761639B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP27881096A JP3761639B2 (en) 1995-09-29 1996-09-30 Audio decoding device

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP27629395 1995-09-29
JP7-276293 1995-09-29
JP8-22107 1996-01-12
JP2210796 1996-01-12
JP27881096A JP3761639B2 (en) 1995-09-29 1996-09-30 Audio decoding device

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2005340547A Division JP4213708B2 (en) 1995-09-29 2005-11-25 Audio decoding device

Publications (2)

Publication Number Publication Date
JPH09252254A JPH09252254A (en) 1997-09-22
JP3761639B2 true JP3761639B2 (en) 2006-03-29

Family

ID=27283717

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27881096A Expired - Lifetime JP3761639B2 (en) 1995-09-29 1996-09-30 Audio decoding device

Country Status (1)

Country Link
JP (1) JP3761639B2 (en)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3279228B2 (en) * 1997-08-09 2002-04-30 日本電気株式会社 Encoded speech decoding device
EP0932259A1 (en) * 1998-01-27 1999-07-28 Lucent Technologies Inc. Iterative decoding on demand
JP4174859B2 (en) * 1998-07-15 2008-11-05 ヤマハ株式会社 Method and apparatus for mixing digital audio signal
JP3632891B2 (en) * 1998-09-07 2005-03-23 日本ビクター株式会社 Audio signal transmission method, audio disc, encoding device, and decoding device
JP4332973B2 (en) * 2000-02-15 2009-09-16 ソニー株式会社 Decoding device and decoding method
JP2001356799A (en) * 2000-06-12 2001-12-26 Toshiba Corp Device and method for time/pitch conversion
JP2002175098A (en) * 2000-09-21 2002-06-21 Matsushita Electric Ind Co Ltd Device and method for encoding, and program, and program recording medium
CN1650528B (en) 2002-05-03 2013-05-22 哈曼国际工业有限公司 Multi-channel downmixing device
JP4155575B2 (en) * 2004-03-31 2008-09-24 株式会社東芝 Audio reproduction device and integrated circuit device
KR20110110093A (en) * 2008-10-01 2011-10-06 톰슨 라이센싱 Decoding apparatus, decoding method, encoding apparatus, encoding method, and editing apparatus
KR101078379B1 (en) * 2009-03-04 2011-10-31 주식회사 코아로직 Method and Apparatus for Processing Audio Data
JP5163545B2 (en) 2009-03-05 2013-03-13 富士通株式会社 Audio decoding apparatus and audio decoding method
JP5365363B2 (en) * 2009-06-23 2013-12-11 ソニー株式会社 Acoustic signal processing system, acoustic signal decoding apparatus, processing method and program therefor
WO2017082050A1 (en) * 2015-11-09 2017-05-18 ソニー株式会社 Decoding device, decoding method, and program

Also Published As

Publication number Publication date
JPH09252254A (en) 1997-09-22

Similar Documents

Publication Publication Date Title
AU2006228821B2 (en) Device and method for producing a data flow and for producing a multi-channel representation
JP4601669B2 (en) Apparatus and method for generating a multi-channel signal or parameter data set
KR101135726B1 (en) Encoder, decoder, encoding method, decoding method, and recording medium
RU2625444C2 (en) Audio processing system
US6823310B2 (en) Audio signal processing device and audio signal high-rate reproduction method used for audio visual equipment
KR101016982B1 (en) Decoding apparatus
EP0990368B1 (en) Method and apparatus for frequency-domain downmixing with block-switch forcing for audio decoding functions
US8433583B2 (en) Audio decoding
JP3761639B2 (en) Audio decoding device
WO2005081229A1 (en) Audio encoder and audio decoder
KR20070001208A (en) Multi-channel encoder
EP1895512A2 (en) Multi-channel encoder
US20070168183A1 (en) Audio distribution system, an audio encoder, an audio decoder and methods of operation therefore
US6233562B1 (en) Audio decoding device and signal processing device for decoding multi-channel signals with reduced memory requirements
KR100240439B1 (en) Process for reducing data in the transmission or storage of digital signals from several interdependent channels
JP2017532603A (en) Audio signal encoding and decoding
JP4213708B2 (en) Audio decoding device
JP2006003580A (en) Device and method for coding audio signal
KR20090066186A (en) Apparatus and method of multi-track down-mixing using cross correlation between voice source
AU2004306509A1 (en) Compatible multi-channel coding/decoding

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050607

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20050907

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20050912

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051125

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: 20051213

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060111

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100120

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100120

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110120

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120120

Year of fee payment: 6

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120120

Year of fee payment: 6

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130120

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term