JP2011507037A - 5点dct−ii、dct−iv、およびdst−ivの計算のための高速アルゴリズム、ならびにアーキテクチャ - Google Patents
5点dct−ii、dct−iv、およびdst−ivの計算のための高速アルゴリズム、ならびにアーキテクチャ Download PDFInfo
- Publication number
- JP2011507037A JP2011507037A JP2010538219A JP2010538219A JP2011507037A JP 2011507037 A JP2011507037 A JP 2011507037A JP 2010538219 A JP2010538219 A JP 2010538219A JP 2010538219 A JP2010538219 A JP 2010538219A JP 2011507037 A JP2011507037 A JP 2011507037A
- Authority
- JP
- Japan
- Prior art keywords
- point
- dct
- discrete cosine
- cosine transform
- transforms
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/14—Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
- G06F17/147—Discrete 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
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/02—Speech 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/0212—Speech 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
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Computational Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Computational Linguistics (AREA)
- Algebra (AREA)
- Discrete Mathematics (AREA)
- Multimedia (AREA)
- Acoustics & Sound (AREA)
- Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Signal Processing (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Complex Calculations (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
本特許出願は、両方とも本出願の譲受人に譲渡され、参照により本明細書に明白に組み込まれる、2007年12月13日に出願された「Fast Algorithms for Computation of 5-Point DCT-II, DCT-IV, and DST-V, and Architecture for Design of Transforms of Size N=5*2K」と題する米国特許仮出願第61/013,579号、および2008年3月25日に出願された「G.EV-VBR MDCT Module」と題する米国特許仮出願第61/039,194号の優先権を主張する。
w4=x0+x4、
w1=x1−x3、
w3=x1+x3、
u2=x2+w3+w4、
u3=−d*w3+c*w4、
u4=d*w4+c*w3、
ここで、
X0=u2、
X1=b*w1+a*w0、
X2=u3−x0、
X3=a*w1−b*w0、
X4=u4+x0、
上式で、
w1=x1−x3、
z2=x1+x3、
z4=x0+x4、
u2=z2+z4、
ここで、
X0=u2+x2、
X1=b*w1+a*w0、
X2=c*u2+0.5*z2−x2、
X3=a*w1−b*w0、
X4==−c*u2−0.5*z4+x2、
上式で、
w1=x1−x3、
z2=x1+x3、
z4=x0+x4、
t2=z2+z4、
t4=z2−z4、
c’=c+0.25、
ここで、
X0=t2+x2、
X1=b*w1+a*w0、
X2=c’*t2−0.25*t4−x2=0.25*t4+c’*t2−x2)、
X3=a*w1−b*w0、
X4=−c’*t2−0.25*t4+x2=0.25*t4−(c’*t2−x2)、
上式で、
w2=x4−x0、
w3=x3−x1、
w4=x3+x1、
w5=w1+w4、
w6=w4−w1、
u1=x2−αw5、
u2=x2+w5、
u3=βw2+γw3、
u4=βw3−γw2、
u5=δw6、
ここで、
X0=u2、
X1=u4、
X2=u4−u1、
X3=u3、
X4=u1+u5、
上式で、
k2=h*x1+g*x3、
k3=f*x0+i*x4、
k4=i*x0+f*x4、
k5=i*x1−f*x3、
k6=−f*x1+i*x3、
k7=g*x0−h*x4、
k8=h*x0−g*x4、
j1=x0+x4、
j2=x3−x1、
ここで、
X0=k3+k1+x2、
X1=k7+k5−x2、
X2=j1+j2−x2、
X3=h*x0−g*x4−f*x1+i*x3+x2、
X4=k4−k2+x2。
q2=x3−x1、
p1=(x1−x3)*g−x1*(g+h)=q2*g−x1*(g+h)、
p2=(x1−x3)*g+x3*(h+g)=q2*g+x3*(g+h)、
p3=(x0+x4)*f+x0*(i−f)=q1*f+x0*(i−f)、
p4=(x0+x4)*f+x4*(i−f)=q1*f+x4*(i−f)、
p5=(x3−x1)*f+x3*(i−f)=q2*f+x3*(i−f)、
p6=(x3−x1)*f−x1*(i−f)=q2*f−x1*(i−f)、
p7=(x0+x4)*g+x0*(h+g)=q1*g+x0*(h+g)、
p8=(x0+x4)*g+x4*(h+g)=q1*g+x4*(h+g)、
ここで、
X0=p2+p4+x2、
X1=p5+p7−x2、
X2=q1+q2−x2、
X3=p6+p8+x2、
X4=p1+p3+x2、
上式で、
w1=g*x1−h*x3、
z2=g*x1+h*x3、
z4=f*x0+i*x4、
v1=2b*w1+2a*w0、
v2=z2+z4、
v3=2b*w0−2a*w1、
y2=2c*v2+z2−2*x2、
y4=−2c*v2−z4+2*x2、
ここで、
X0=v2+x2、
X1=v1−2*X0、
X2=y2−X1、
X3=v3−X2、
X4=y4−X3、
上式で、
w1=g*x1−h*x3、
z2=g*x1+h*x3、
z4=f*x0+i*x4、
v1=2b*w1+2a*w0、
v2=z2+z4、
v3=2b*w0−2a*w1、
y2=(2c+2)*v2+z2、
y4=2c*v2+z4、
ここで、
X0=v2+x2、
X1=v1−2*X0、
X2=y2−v1、
X3=v3−X2、
X4=−y4+2*x2−X3、
上式で、
w1=g*x1−h*x3、
z2=g*x1+h*x3、
z4=f*x0+i*x4、
v1=2b*w1+2a*w0、
v2=z2+z4、
v3=2b*w0−2a*w1、
d2=(2c+2)*z2+(2c+2)*z4、
d4=(2c+2)*z4+2c*z2、
ここで、
X0=z2+z4+x2、
X1=v1−2*X0、
X2=d2−v1、
X3=v3−X2、
X4=−d4+2*x2−X3、
上式で、
w1=g*x1−h*x3、
z2=g*x1+h*x3、
z4=f*x0+i*x4、
z1=2a*w0+2b*w1
z3=(2b+2a)*w0−(2a−2b)*w1、
d2=2(c+2)*z2+(2c+2)*z4、
d4=(2c+2)*z4+2c*z2、
ここで、
X0=z2+z4+x2、
X1=z1−2*X0、
X2=d2−z1、
X3=z3−d2、
X4=−d4+2*x2−X3、
上式で、
w1=g*x1−h*x3、
z2=g*x1+h*x3、
z4=f*x0+i*x4、
z1=2a*w0+2b*w1
z3=(2b+2a)*w0−(2a−2b)*w1、
r2=(2c+2)*z2+(2c+2)*z4、
r4=4(c+1)*z2+4(c+1)*z4、
ここで、
X0=z2+z4+x2、
X1=z1−2*X0、
X2=d2−z1、
X3=z3−r2、
X4=−r4+2*x2−z3、
上式で、
u5=X4+X2、
w0=X0+u1、
w5=X0−αu1、
w2=βX3−γX1、
w3=γX3−βX1、
w6=δu5、
w1=w5−w6、
w4=w5+w6、
ここで、
x0=w1−w2、
x1=w4+w3、
x2=w0、
x3=w4−w3、
x4=w1+w2、
上式で、
1つの特徴は、(ある整数K>=1に対して、N=5*2^Kである)N点MDCT変換をより小さいサイズのN/2点DCT−IV、DST−IVおよび/またはDCT−II変換にマッピングすることによって、N点MDCT変換を実装することを提供する。一例では、スケーリングされた5点コア関数を最後の段で利用することによって、MDCTを2分の1に系統的にデシメートすることができる。1つの特徴は、サイズ5のDCT−II、DCT−IV、およびDST−IVコア変換を計算するためのいくつかの高速アルゴリズムを提供する。本明細書で請求する全体的な変換アーキテクチャは、N=5*2^Kである、サイズNの変換をサイズN/2の2つの変換に再帰的に分割し、本明細書で説明する高速の技法を使用することによって最終の(最小の)5点変換を実装する、一般的なデシメーションプロセスである。そのようなサイズの変換は、最近および新興の規格G.729.1、G.718、EVRC−WBなどのスピーチおよびオーディオコーディングの適用例のためのMDCTフィルタバンクの設計において発生する。
図1は、MDCT分析フィルタバンクを含むことができるエンコーダの一例を示すブロック図である。エンコーダ102は入力オーディオ信号104を受信することができる。MDCT分析フィルタバンク106(すなわち、タイプIVの離散コサイン変換に基づくモディファイド離散コサイン変換)は、時間領域入力オーディオ信号104を複数のサブバンド信号に分解し、それらの信号を周波数領域に変換するように動作し、各サブバンド信号は、サブバンドごとに、ブロックごとに、変換係数に変換される。次いで、得られた信号は、量子化器108によって量子化され、エントロピーエンコーダ110によって符号化されて、デジタルオーディオ信号のビットストリーム112が生成される。一例によれば、MDCT分析フィルタバンク106は、ウィンドウイング関数114、(たとえば、時間領域から周波数領域への)変換116、および/またはスケーリング関数118によって実装することができる。ウィンドウイング関数114、変換116、および/またはスケーリング関数116を含むMDCT分析フィルタバンク106は、ハードウェア(たとえば、プロセッサ、回路、プログラマブル論理デバイスなどとして)、ソフトウェア(たとえば、プロセッサによって実行可能な命令)、および/またはそれらの組合せで実装することができる。
1つの特徴によれば、1つまたは複数のDCT−II(およびIDCT−II)変換としてそれぞれ実装することができる1つまたは複数のDCT−IVまたはDST−IV(およびIDCT−IVまたはDST−IV)によって、変換116(図1)および逆変換316(図3)をデシメートし、実装することができる。
処理効率を達成するためには、より大きい変換によって使用される最小サイズ変換が高速で効率的であるべきである。これは、これらの小さいサイズの変換によって実行される演算(たとえば、乗算、加算、およびシフト)を最小限に抑えることによって達成される。したがって、最小サイズ変換のための様々な因数分解を実装して、これを達成することができる。どの変換の因数分解を実装するかの選択は、使用されているプロセッサの能力を含む様々なファクタに依存することができる。
w4=x0+x4、
w1=x1−x3、
w3=x1+x3、
および、
u2=x2+w3+w4、
u3=−d*w3+c*w4、
u4=d*w4+c*w3、
そして、以下の出力を得る。
X1=b*w1+a*w0、
X2=u3−x0、
X3=a*w1−b*w0、
X4=u4+x0、
上式で、入力係数504(x0,x1,x2,x3,x4)は、出力係数506(X0,X1,X2,X3,およびX4)に変換される。図5のこの方式の複雑さは、12回加算および8回乗算にある。特に、第1のバタフライ508を実装して出力係数X1およびX3を得て、第2のバタフライ510を実装して出力係数X2およびX4を得る。この変換502における最長経路は、3回演算(バタフライが各経路につきわずか1つのMACを必要とすると仮定すると、加算および/または乗算)のみである。「バタフライ」によって実行される演算は、しばしば平面回転またはギブンス回転と呼ばれる。
w1=x1−x3、
z2=x1+x3、
z4=x0+x4、
u2=z2+z4。
X2=c*z4−d*z2−x2=c*(z4+z2)+(c−d)*z2−x2=c*(z4+z2)+0.5*z2−x2、
X4=d*z4−c*z2+x2=−c*(z4+z2)−(c−d)*z4+x2=−c*(z4+z2)−0.5*z4+x2。
X1=b*w1+a*w0、
X2=c*u2+0.5*z2−x2、
X3=a*w1−b*w0、
X4==−c*u2−0.5*z4+x2。
X4=−c*(z4+z2)−0.5*z4+x2=−c’*(z4+z2)+d’*(z4−z2)+x2、
上式で、値c’およびd’は以下のように選択される。
c+0.5=c’−d’。
d’=−0.25、および、
c’=c−d’=c+0.25。
X4=−c’*(z4+z2)−0.25*(z4−z2)+x2=0.25*(z2−z4)−(c’*(z4+z2)−x2)、
この結果、図7の変換702がもたらされる。
w1=x1−x3、
z2=x1+x3、
z4=x0+x4、
t2=z2+z4、
t4=z2−z4、
c’=c+0.25。
X1=b*w1+a*w0、
X2=c’*t2−0.25*t4−x2=0.25*t4+c’*t2−x2)、
X3=a*w1−b*w0、
X4=−c’*t2−0.25*t4+x2=0.25*t4−(c’*t2−x2)。
w2=x4−x0、
w3=x3−x1、
w4=x3+x1、
w5=w1+w4、
w6=w4−w1、
u1=x2−αw5、
u2=x2+w5、
u3=βw2+γw3、
u4=βw3−γw2、
u5=δw6。
X1=u4、
X2=u4−u1、
X3=u3、
X4=u1+u5。
図4〜図20に示す変換は、それらの図に示す順変換を逆にするように反転することができる。図32は、図8の順変換に対応する逆変換(5点IDCT−II逆変換)を示している。逆変換3202は、入力3204(スペクトル係数)を出力(時間領域値)3206に変換し、以下の中間結果によって特徴付けることができる。
u5=X4+X2、
w0=X0+u1、
w5=X0−αu1、
w2=βX3−γX1
w3=γX3−βX1、フローグラフと比較したソフトウェアの否定因数を使用する。
x1=w4+w3、
x2=w0、
x3=w4−w3、
x4=w1+w2。
効率的なDCT−IV変換および/またはDST−IVは、様々な方法で実装することができる。たとえば、変換への入力がベクトルxによって与えられると仮定すると、以下のようになり、
X1=g*x0−h*x4+i*x1−f*x3−x2、
X2=−x1+x3−x2+x0+x4、
X3=h*x0−g*x4−f*x1+i*x3+x2、
X4=i*x0+f*x4−h*x1−g*x3+x2、
上式で、
k2=h*x1+g*x3、
k3=f*x0+i*x4、
k4=i*x0+f*x4、
k5=i*x1−f*x3、
k6=−f*x1+i*x3、
k7=g*x0−h*x4、
k8=h*x0−g*x4、
j1=x0+x4、
j2=x3−x1。
X1=k7+k5−x2、
X2=j1+j2−x2、
X3=h*x0−g*x4−f*x1+i*x3+x2、
X4=k4−k2+x2。
i*x0+f*x4=(x0+x4)*f+x0*(i−f)、
g*x1+h*x3=(x1−x3)*g+x3*(h+g)、
−h*x1−g*x3=(x1−x3)*g−x1*(g+h)。
i*x1−f*x3=(x0+x4)*g+x0*(h+g)、
h*x0−g*x4=(x3−x1)*f−x1*(i−f)、
−f*x1+i*x3=(x0+x4)*g+x4*(h+g)。
X1=(x3−x1)*f+x3*(i−f)+(x0+x4)*g+x0*(h+g)−x2
X2=−x1+x3−x2+x0+x4、
X3=(x3−x1)*f−x1*(i−f)+(x0+x4)*g+x4*(h+g)+x2、
X4=(x0+x4)*f+x0*(i−f)+(x1−x3)*g−x1*(g+h)+x2。
q2=x3−x1、
p1=(x1−x3)*g−x1*(g+h)=q2*g−x1*(g+h)、
p2=(x1−x3)*g+x3*(h+g)=q2*g+x3*(g+h)、
p3=(x0+x4)*f+x0*(i−f)=q1*f+x0*(i−f)、
p4=(x0+x4)*f+x4*(i−f)=q1*f+x4*(i−f)、
p5=(x3−x1)*f+x3*(i−f)=q2*f+x3*(i−f)、
p6=(x3−x1)*f−x1*(i−f)=q2*f−x1*(i−f)、
p7=(x0+x4)*g+x0*(h+g)=q1*g+x0*(h+g)、
p8=(x0+x4)*g+x4*(h+g)=q1*g+x4*(h+g)。
X1=p5+p7−x2、
X2=q1+q2−x2、
X3=p6+p8+x2、
X4=p1+p3+x2。
X1=[2a*(f*x0−i*x4)+2b*(g*x1−h*x3)]−[2*X0]、
X2=[2c*(f*x0+i*x4+g*x1+h*x3)+(g*x1+h*x3)−2*x2]−[X1]、
X3=[2b*(f*x0−i*x4)−2a*(g*x1−h*x3)]−[X2]、
X4=[−2c*(f*x0+i*x4+g*x1+h*x3)−(f*x0+i*x4)+2*x2]−[X3]、
上式で、
w1=g*x1−h*x3、
z2=g*x1+h*x3、
z4=f*x0+i*x4、
v1=2b*w1+2a*w0、
v2=z2+z4、
v3=2b*w0−2a*w1、
y2=2c*v2+z2−2*x2、
y4=−2c*v2−z4+2*x2。
X1=v1−2*X0、
X2=y2−X1、
X3=v3−X2、
X4=y4−X3。
X1=[2a*(f*x0−i*x4)+2b*(g*x1−h*x3)]−[2*X0]、
X2=[(2c+2)*(f*x0+i*x4+g*x1+h*x3)]+(g*x1+h*x3)−[2a*(f*x0−i*x4)+2b*(g*x1−h*x3)]、
X3=[2b*(f*x0−i*x4)−2a*(g*x1−h*x3)]−[X2]、
X4=[−2c*(f*x0+i*x4+g*x1+h*x3)−(f*x0+i*x4)+2*x2]−[X3]。
w1=g*x1−h*x3、
z2=g*x1+h*x3、
z4=f*x0+i*x4、
v1=2b*w1+2a*w0、
v2=z2+z4、
v3=2b*w0−2a*w1、
y2=(2c+2)*v2+z2、
y4=2c*v2+z4。
X1=v1−2*X0、
X2=y2−v1、
X3=v3−X2、
X4=−y4+2*x2−X3。
X1=[2a*(f*x0−i*x4)+2b*(g*x1−h*x3)]−[2*X0]、
X2=[(2c+2)*(g*x1+h*x3)+(2c+2)*(f*x0+i*x4)]−[2a*(f*x0−i*x4)+2b*(g*x1−h*x3)]、
X3=[2b*(f*x0−i*x4)−2a*(g*x1−h*x3)]−[X2]、
X4=[−(2c+2)*(f*x0+i*x4)−2c*(g*x1+h*x3)+2*x2]−[X3]。
w1=g*x1−h*x3、
z2=g*x1+h*x3、
z4=f*x0+i*x4、
v1=2b*w1+2a*w0、
v2=z2+z4、
v3=2b*w0−2a*w1、
d2=(2c+2)*z2+(2c+2)*z4、
d4=(2c+2)*z4+2c*z2。
X1=v1−2*X0、
X2=d2−v1、
X3=v3−X2、
X4=−d4+2*x2−X3。
X1=[2a*(f*x0−i*x4)+2b*(g*x1−h*x3)]−[2*X0]、
X2=[2(c+2)*(g*x1+h*x3)+(2c+2)*(f*x0+i*x4)]−[2a*(f*x0−i*x4)+2b*(g*x1−h*x3)]、
X3=[(2b+2a)*(f*x0−i*x4)−(2a−2b)*(g*x1−h*x3)]−[2(c+2)*(g*x1+h*x3)+(2c+2)*(f*x0+i*x4)]、
X4=[−(2c+2)*(f*x0+i*x4)−2c*(g*x1+h*x3)+2*x2]−[X3]。
w1=g*x1−h*x3、
z2=g*x1+h*x3、
z4=f*x0+i*x4、
z1=2a*w0+2b*w1
z3=(2b+2a)*w0−(2a−2b)*w1、
d2=2(c+2)*z2+(2c+2)*z4、
d4=(2c+2)*z4+2c*z2。
X1=z1−2*X0、
X2=d2−z1、
X3=z3−d2、
X4=−d4+2*x2−X3。
X1=[2a*(f*x0−i*x4)+2b*(g*x1−h*x3)]−[2*X0]、
X2=[2(c+2)*(g*x1+h*x3)+(2c+2)*(f*x0+i*x4)]−[2a*(f*x0−i*x4)+2b*(g*x1−h*x3)]、
X3=[(2b+2a)*(f*x0−i*x4)−(2a−2b)*(g*x1−h*x3)]−[2(c+2)*(g*x1+h*x3)+(2c+2)*(f*x0+i*x4)]、
X4=[−4(c+1)*(f*x0+i*x4)−4(c+1)*(g*x1+h*x3)+2*x2]−[(2b+2a)*(f*x0−i*x4)−(2a−2b)*(g*x1−h*x3)]。
w1=g*x1−h*x3、
z2=g*x1+h*x3、
z4=f*x0+i*x4、
z1=2a*w0+2b*w1
z3=(2b+2a)*w0−(2a−2b)*w1、
r2=(2c+2)*z2+(2c+2)*z4、
r4=4(c+1)*z2+4(c+1)*z4。
X1=z1−2*X0、
X2=d2−z1、
X3=z3−r2、
X4=−r4+2*x2−z3。
一実装形態によれば、N=5*2KであるNサイズ変換は、DCT−II、DCT−IV、DST−IV、または同様の核に基づくことができる、一連のより小さいN/2サイズ変換に再帰的に分割することができ、最後の5点カスケードは、5点変換を計算するための記載の高速アルゴリズムのうちの1つを使用することによって実装する。
別の特徴によれば、MDCTフィルタバンクの一部として非対称ウィンドウイング段を実装することができる。適用例によっては、MDCTフィルタバンクは、複数の層を有するスケーラブルなスピーチコーデックで実装することができ、いくつかのそのような層は、MDCTを使用して、前の層からの誤差信号を変換することができる。40ミリ秒ウィンドウイング段を用いた重み付き誤差信号werr_sp(k)のMDCTは、以下によって与えられる。
a4=x4−x0、
a3=x3−x1、
a1=x3+x1、
b0=a0+a1、
b1=δ(a0−a1)、
b2=x2−αb0、
y0=b0+x2、
y1=γa3−βa4、
y2=b1−b2、
y3=βa3+γa4、
上式で、
図24は、変換値を計算するためのデバイスを示すブロック図である。デバイス2402は、入力モジュール2406、ウィンドウモジュール2410、および/または変換モジュール2414を含むことができる。入力モジュール2406は、オーディオ信号2404を受信し、そのオーディオ信号を表す時間領域入力値2408を与えるように適合することができる。ウィンドウモジュール2410は、図23に示すような非対称ウィンドウイング関数を生成することができる。
図26は、変換値を計算するためのデバイスを示すブロック図である。デバイス2602は、入力モジュール2606、逆変換モジュール2608、および/またはウィンドウモジュール2612を含むことができる。逆変換モジュール2608は、スペクトル係数2604を出力値2610に変換するように適合することができる。たとえば、逆変換モジュールは、各々の寸法が逆モディファイド離散コサイン変換(IMDCT)よりも小さい、逆離散コサイン変換タイプIV(IDCT−IV)、逆離散コサイン変換タイプII(IDCT−II)、またはIDCT−IVとIDCT−IIとの両方のうちの少なくとも1つに再帰的に分割されるIMDCTを使用して、スペクトル係数を時間領域出力値2610に変換することができる。
Claims (52)
- 変換値を計算する方法であって、
オーディオ信号を表す時間領域入力値を受信することと、
複数の5点変換に再帰的にデシメートされるモディファイド離散コサイン変換(MDCT)を使用して、前記入力値をスペクトル係数に変換すること
を備える方法。 - 前記複数の5点変換のうちの少なくとも1つが、12回加算演算、8回乗算演算、および3回演算の最長経路長によって因数分解される、少なくとも1つの離散コサイン変換タイプII(DCT−II)(502)を含む、請求項1に記載の方法。
- 前記複数の5点変換のうちの少なくとも1つが、入力ベクトル[x0,x1,x2,x3,x4]をとって出力ベクトル[X0,X1,X2,X3,X4]を生成し、少なくとも以下の複数の中間結果によって特徴付けられる、少なくとも1つの離散コサイン変換タイプII(DCT−II)(502)を含み、
w0=x0−x4、
w4=x0+x4、
w1=x1−x3、
w3=x1+x3、
u2=x2+w3+w4、
u3=−d*w3+c*w4、
u4=d*w4+c*w3、
ここで、
X0=u2、
X1=b*w1+a*w0、
X2=u3−x0、
X3=a*w1−b*w0、
X4=u4+x0、
上式で、
である、請求項1に記載の方法。 - 前記複数の5点変換のうちの少なくとも1つが、12回加算演算、5回乗算演算、2回シフト演算、および4回演算の最長経路長によって因数分解される、少なくとも1つの離散コサイン変換タイプII(DCT−II)(602)を含む、請求項1に記載の方法。
- 前記複数の5点変換のうちの少なくとも1つが、12回加算演算、5回乗算演算、1回シフト演算、および4回演算の最長経路長によって因数分解される、少なくとも1つの離散コサイン変換タイプII(DCT−II)(702)を含む、請求項1に記載の方法。
- 前記複数の5点変換のうちの少なくとも1つが、入力ベクトル[x0,x1,x2,x3,x4]をとって出力ベクトル[X0,X1,X2,X3,X4]を生成し、以下の中間結果を有することによって特徴付けられる、少なくとも1つの離散コサイン変換タイプII(DCT−II)(702)を含み、
w0=x0−x4、
w1=x1−x3、
z2=x1+x3、
z4=x0+x4、
t2=z2+z4、
t4=z2−z4、
c’=c+0.25、
ここで、
X0=t2+x2、
X1=b*w1+a*w0、
X2=c’*t2−0.25*t4−x2=0.25*t4+c’*t2−x2)、
X3=a*w1−b*w0、
X4=−c’*t2−0.25*t4+x2=0.25*t4−(c’*t2−x2)、
上式で、
である、請求項1に記載の方法。 - 前記複数の5点変換のうちの少なくとも1つが、12回加算演算、4回乗算演算、2回シフト演算、および4回演算の最長経路長によって因数分解される、少なくとも1つの離散コサイン変換タイプII(DCT−II)(802)を含む、請求項1に記載の方法。
- 前記複数の5点変換のうちの少なくとも1つが、入力ベクトル[x0,x1,x2,x3,x4]をとって出力ベクトル[X0,X1,X2,X3,X4]を生成し、少なくとも以下の複数の中間結果によって特徴付けられる、少なくとも1つの離散コサイン変換タイプII(DCT−II)(802)を含み、
w1=x0+x4、
w2=x4−x0、
w3=x3−x1、
w4=x3+x1、
w5=w1+w4、
w6=w4−w1、
u1=x2−αw5、
u2=x2+w5、
u3=βw2+γw3、
u4=βw3−γw2、
u5=δw6、
ここで、
X0=u2、
X1=u4、
X2=u4−u1、
X3=u3、
X4=u1+u5、
上式で、
である、請求項1に記載の方法。 - 前記複数の5点変換のうちの少なくとも1つが、12回加算演算、5回乗算演算、1回シフト演算、および4回演算の最長経路長によって因数分解される、少なくとも1つの変換(802)を含む、請求項1に記載の方法。
- 前記複数の5点変換のうちの少なくとも1つが、20回加算演算、16回乗算演算、および3回演算の最長経路長によって因数分解される、離散コサイン変換タイプIV(DCT−IV)(902)を含む、請求項1に記載の方法。
- 前記複数の5点変換のうちの少なくとも1つが、入力ベクトル[x0,x1,x2,x3,x4]をとって出力ベクトル[X0,X1,X2,X3,X4]を生成し、少なくとも以下の複数の中間結果によって特徴付けられる、少なくとも1つの離散コサイン変換タイプIV(DCT−IV)(902)を含み、
k1=g*x1+h*x3、
k2=h*x1+g*x3、
k3=f*x0+i*x4、
k4=i*x0+f*x4、
k5=i*x1−f*x3、
k6=−f*x1+i*x3、
k7=g*x0−h*x4、
k8=h*x0−g*x4、
j1=x0+x4、
j2=x3−x1、
ここで、
X0=k3+k1+x2、
X1=k7+k5−x2、
X2=j1+j2−x2、
X3=h*x0−g*x4−f*x1+i*x3+x2、
X4=k4−k2+x2、
上式で、
である、請求項1に記載の方法。 - 前記複数の5点変換のうちの少なくとも1つが、20回加算演算、12回乗算演算、および4回演算の最長経路長によって因数分解される、離散コサイン変換タイプIV(DCT−IV)(1002)を含む、請求項1に記載の方法。
- 前記複数の5点変換のうちの少なくとも1つが、入力ベクトル[x0,x1,x2,x3,x4]をとって出力ベクトル[X0,X1,X2,X3,X4]を生成し、少なくとも以下の複数の中間結果によって特徴付けられる、少なくとも1つの離散コサイン変換タイプIV(DCT−IV)(1002)を含み、
q1=x0+x4、
q2=x3−x1、
p1=(x1−x3)*g−x1*(g+h)=q2*g−x1*(g+h)、
p2=(x1−x3)*g+x3*(h+g)=q2*g+x3*(g+h)、
p3=(x0+x4)*f+x0*(i−f)=q1*f+x0*(i−f)、
p4=(x0+x4)*f+x4*(i−f)=q1*f+x4*(i−f)、
p5=(x3−x1)*f+x3*(i−f)=q2*f+x3*(i−f)、
p6=(x3−x1)*f−x1*(i−f)=q2*f−x1*(i−f)、
p7=(x0+x4)*g+x0*(h+g)=q1*g+x0*(h+g)、
p8=(x0+x4)*g+x4*(h+g)=q1*g+x4*(h+g)、
ここで、
X0=p2+p4+x2、
X1=p5+p7−x2、
X2=q1+q2−x2、
X3=p6+p8+x2、
X4=p1+p3+x2、
上式で、
である、請求項1に記載の方法。 - 前記複数の5点変換のうちの少なくとも1つが、16回加算演算、9回乗算演算、および5回演算の最長経路長によって因数分解される、離散コサイン変換タイプIV(DCT−IV)(1402)を含む、請求項1に記載の方法。
- 前記複数の5点変換のうちの少なくとも1つが、入力ベクトル[x0,x1,x2,x3,x4]をとって出力ベクトル[X0,X1,X2,X3,X4]を生成し、少なくとも以下の複数の中間結果によって特徴付けられる、少なくとも1つの離散コサイン変換タイプIV(DCT−IV)(1402)を含み、
w0=f*x0−i*x4、
w1=g*x1−h*x3、
z2=g*x1+h*x3、
z4=f*x0+i*x4、
v1=2b*w1+2a*w0、
v2=z2+z4、
v3=2b*w0−2a*w1、
y2=2c*v2+z2−2*x2、
y4=−2c*v2−z4+2*x2、
ここで、
X0=v2+x2、
X1=v1−2*X0、
X2=y2−X1、
X3=v3−X2、
X4=y4−X3、
上式で、
であり、
である、請求項1に記載の方法。 - 前記複数の5点変換のうちの少なくとも1つが、15回加算演算、10回乗算演算、2回シフト演算、および5回演算の最長経路長によって因数分解される、離散コサイン変換タイプIV(DCT−IV)(1502)を含む、請求項1に記載の方法。
- 前記複数の5点変換のうちの少なくとも1つが、入力ベクトル[x0,x1,x2,x3,x4]をとって出力ベクトル[X0,X1,X2,X3,X4]を生成し、少なくとも以下の複数の中間結果によって特徴付けられる、少なくとも1つの離散コサイン変換タイプIV(DCT−IV)(1502)を含み、
w0=f*x0−i*x4、
w1=g*x1−h*x3、
z2=g*x1+h*x3、
z4=f*x0+i*x4、
v1=2b*w1+2a*w0、
v2=z2+z4、
v3=2b*w0−2a*w1、
y2=(2c+2)*v2+z2、
y4=2c*v2+z4、
ここで、
X0=v2+x2、
X1=v1−2*X0、
X2=y2−v1、
X3=v3−X2、
X4=−y4+2*x2−X3、
上式で、
であり、
である、請求項1に記載の方法。 - 前記複数の5点変換のうちの少なくとも1つが、15回加算演算、11回乗算演算、2回シフト演算、および5回演算の最長経路長によって因数分解される、離散コサイン変換タイプIV(DCT−IV)(1602/1702)を含む、請求項1に記載の方法。
- 前記複数の5点変換のうちの少なくとも1つが、入力ベクトル[x0,x1,x2,x3,x4]をとって出力ベクトル[X0,X1,X2,X3,X4]を生成し、少なくとも以下の複数の中間結果によって特徴付けられる、少なくとも1つの離散コサイン変換タイプIV(DCT−IV)(1602)を含み、
w0=f*x0−i*x4、
w1=g*x1−h*x3、
z2=g*x1+h*x3、
z4=f*x0+i*x4、
v1=2b*w1+2a*w0、
v2=z2+z4、
v3=2b*w0−2a*w1、
d2=(2c+2)*z2+(2c+2)*z4、
d4=(2c+2)*z4+2c*z2、
ここで、
X0=z2+z4+x2、
X1=v1−2*X0、
X2=d2−v1、
X3=v3−X2、
X4=−d4+2*x2−X3、
上式で、
であり、
である、請求項1に記載の方法。 - 前記複数の5点変換のうちの少なくとも1つが、入力ベクトル[x0,x1,x2,x3,x4]をとって出力ベクトル[X0,X1,X2,X3,X4]を生成し、少なくとも以下の複数の中間結果によって特徴付けられる、少なくとも1つの離散コサイン変換タイプIV(DCT−IV)(1702)を含み、
w0=f*x0−i*x4、
w1=g*x1−h*x3、
z2=g*x1+h*x3、
z4=f*x0+i*x4、
z1=2a*w0+2b*w1
z3=(2b+2a)*w0−(2a−2b)*w1、
d2=2(c+2)*z2+(2c+2)*z4、
d4=(2c+2)*z4+2c*z2、
ここで、
X0=z2+z4+x2、
X1=z1−2*X0、
X2=d2−z1、
X3=z3−d2、
X4=−d4+2*x2−X3、
上式で、
であり、
である、請求項1に記載の方法。 - 前記複数の5点変換のうちの少なくとも1つが、15回加算演算、12回乗算演算、2回シフト演算、および5回演算の最長経路長によって因数分解される、離散コサイン変換タイプIV(DCT−IV)(1802)を含む、請求項1に記載の方法。
- 前記複数の5点変換のうちの少なくとも1つが、入力ベクトル[x0,x1,x2,x3,x4]をとって出力ベクトル[X0,X1,X2,X3,X4]を生成し、以下の中間結果によって特徴付けられる、少なくとも1つの離散コサイン変換タイプIV(DCT−IV)(1802)を含み、
w0=f*x0−i*x4、
w1=g*x1−h*x3、
z2=g*x1+h*x3、
z4=f*x0+i*x4、
z1=2a*w0+2b*w1
z3=(2b+2a)*w0−(2a−2b)*w1、
r2=(2c+2)*z2+(2c+2)*z4、
r4=4(c+1)*z2+4(c+1)*z4、
ここで、
X0=z2+z4+x2、
X1=z1−2*X0、
X2=d2−z1、
X3=z3−r2、
X4=−r4+2*x2−z3、
上式で、
であり、
である、請求項1に記載の方法。 - 前記変換を実行する前に前記入力値に対してウィンドウイング演算を実行することをさらに備え、前記ウィンドウイング演算が非対称ウィンドウ関数を実装する請求項1に記載の方法。
- 前記MDCTが、5点離散コサイン変換タイプIIを使用して、640、320、160、80、40点変換のうちの少なくとも1つを実装する、請求項1に記載の方法。
- 前記MDCTが、5点離散コサイン変換タイプIVを使用して、640、320、160、80、40点変換のうちの少なくとも1つを実装する、請求項1に記載の方法。
- 前記MDCTが、5点離散コサイン変換タイプIIおよび5点離散コサイン変換タイプIVを使用して、640、320、160、80、40点変換のうちの少なくとも1つを実装する、請求項1に記載の方法。
- 前記MDCTが、5点離散サイン変換タイプIVを使用して、640、320、160、80、40点変換のうちの少なくとも1つを実装する、請求項1に記載の方法。
- スケーラブルなスピーチおよびオーディオエンコーダデバイスであって、
オーディオ信号を表す時間領域入力値を得ることと、
複数の5点変換に再帰的にデシメートされるモディファイド離散コサイン変換(MDCT)を使用して、前記入力値をスペクトル係数に変換すること
を行うように適合された離散コサイン変換(DCT)タイプ変換層モジュール
を備えるデバイス。 - 前記複数の5点変換のうちの少なくとも1つが、12回加算演算、4回乗算演算、2回シフト演算、および4回演算の最長経路長によって因数分解される、少なくとも1つの離散コサイン変換タイプII(DCT−II)(802)を含む、請求項29に記載のデバイス。
- 前記複数の5点変換のうちの少なくとも1つが、入力ベクトル[x0,x1,x2,x3,x4]をとって出力ベクトル[X0,X1,X2,X3,X4]を生成し、少なくとも以下の複数の中間結果によって特徴付けられる、少なくとも1つの離散コサイン変換タイプII(DCT−II)(802)を含み、
w1=x0+x4、
w2=x4−x0、
w3=x3−x1、
w4=x3+x1、
w5=w1+w4、
w6=w4−w1、
u1=x2−αw5、
u2=x2+w5、
u3=βw2+γw3、
u4=βw3−γw2、
u5=δw6、
ここで、
X0=u2、
X1=u4、
X2=u4−u1、
X3=u3、
X4=u1+u5、
上式で、
である、請求項29に記載のデバイス。 - 前記複数の5点変換のうちの少なくとも1つが、12回加算演算、5回乗算演算、1回シフト演算、および4回演算の最長経路長によって因数分解される、少なくとも1つの変換(802)を含む、請求項29に記載のデバイス。
- スケーラブルなスピーチおよびオーディオエンコーダデバイスであって、
オーディオ信号を表す時間領域入力値を得る手段と、
複数の5点変換に再帰的にデシメートされるモディファイド離散コサイン変換(MDCT)を使用して、前記入力値をスペクトル係数に変換する手段と
を備えるデバイス。 - 前記複数の5点変換のうちの少なくとも1つが、入力ベクトル[x0,x1,x2,x3,x4]をとって出力ベクトル[X0,X1,X2,X3,X4]を生成し、少なくとも以下の複数の中間結果によって特徴付けられる、少なくとも1つの離散コサイン変換タイプII(DCT−II)(802)を含み、
w1=x0+x4、
w2=x4−x0、
w3=x3−x1、
w4=x3+x1、
w5=w1+w4、
w6=w4−w1、
u1=x2−αw5、
u2=x2+w5、
u3=βw2+γw3、
u4=βw3−γw2、
u5=δw6、
ここで、
X0=u2、
X1=u4、
X2=u4−u1、
X3=u3、
X4=u1+u5、
上式で、
である、請求項33に記載のデバイス。 - オーディオ信号を表す時間領域入力値を得ることと、
複数の5点変換に再帰的にデシメートされるモディファイド離散コサイン変換(MDCT)を使用して、前記入力値をスペクトル係数に変換すること
を行うように適合されたスケーラブルなスピーチおよびオーディオ符号化回路を含むプロセッサであって、前記複数の5点変換うちの少なくとも1つが、入力ベクトル[x0,x1,x2,x3,x4]をとって出力ベクトル[X0,X1,X2,X3,X4]を生成し、少なくとも以下の複数の中間結果によって特徴付けられる、少なくとも1つの離散コサイン変換タイプII(DCT−II)(802)を含み、
w1=x0+x4、
w2=x4−x0、
w3=x3−x1、
w4=x3+x1、
w5=w1+w4、
w6=w4−w1、
u1=x2−αw5、
u2=x2+w5、
u3=βw2+γw3、
u4=βw3−γw2、
u5=δw6、
ここで、
X0=u2、
X1=u4、
X2=u4−u1、
X3=u3、
X4=u1+u5、
上式で、
である、プロセッサ。 - スケーラブルなスピーチおよびオーディオ符号化のために動作可能な命令を備える機械可読媒体であって、前記命令が、1つまたは複数のプロセッサによって実行されたときに、
オーディオ信号を表す時間領域入力値を得ることと、
複数の5点変換に再帰的にデシメートされるモディファイド離散コサイン変換(MDCT)を使用して、前記入力値をスペクトル係数に変換すること
を前記プロセッサに行わせ、前記複数の5点変換うちの少なくとも1つが、入力ベクトル[x0,x1,x2,x3,x4]をとって出力ベクトル[X0,X1,X2,X3,X4]を生成し、少なくとも以下の複数の中間結果によって特徴付けられる、少なくとも1つの離散コサイン変換タイプII(DCT−II)(802)を含み、
w1=x0+x4、
w2=x4−x0、
w3=x3−x1、
w4=x3+x1、
w5=w1+w4、
w6=w4−w1、
u1=x2−αw5、
u2=x2+w5、
u3=βw2+γw3、
u4=βw3−γw2、
u5=δw6、
ここで、
X0=u2、
X1=u4、
X2=u4−u1、
X3=u3、
X4=u1+u5、
上式で、
である、機械可読媒体。 - 逆変換値を計算する方法であって、
オーディオ信号を表すスペクトル係数入力値を受信することと、
複数の5点逆変換に再帰的にデシメートされる逆モディファイド離散コサイン変換(IMDCT)を使用して、前記スペクトル係数入力値を時間領域出力値に変換すること
を備える方法。 - 前記複数の5点逆変換のうちの少なくとも1つが、12回加算演算、4回乗算演算、2回シフト演算、および4回演算の最長経路長によって因数分解される、少なくとも1つの逆離散コサイン変換タイプII(DCT−II)(3202)を含む、請求項37に記載の方法。
- 前記複数の5点逆変換のうちの少なくとも1つが、入力ベクトル[X0,X1,X2,X3,X4]をとって出力ベクトル[x0,x1,x2,x3,x4]を生成し、少なくとも以下の複数の中間結果によって特徴付けられる、少なくとも1つの逆離散コサイン変換タイプII(IDCT−II)(3202)を含み、
u1=X4−X2、
u5=X4+X2、
w0=X0+u1、
w5=X0−αu1、
w2=βX3−γX1、
w3=γX3−βX1、
w6=δu5、
w1=w5−w6、
w4=w5+w6、
ここで、
x0=w1−w2、
x1=w4+w3、
x2=w0、
x3=w4−w3、
x4=w1+w2、
上式で、
である、請求項37に記載の方法。 - 前記逆変換を実行した後に前記入力値に対してウィンドウイング演算を実行することをさらに備え、前記ウィンドウイング演算が非対称ウィンドウ関数を実装する請求項37に記載の方法。
- 前記IMDCTが、5点逆離散コサイン変換タイプIIを使用して、640、320、160、80、40点変換のうちの少なくとも1つを実装する、請求項37に記載の方法。
- 前記IMDCTが、5点逆離散コサイン変換タイプIVを使用して、640、320、160、80、40点変換のうちの少なくとも1つを実装する、請求項37に記載の方法。
- 前記IMDCTが、5点逆離散コサイン変換タイプIIおよび5点逆離散コサイン変換タイプIVを使用して、640、320、160、80、40点変換のうちの少なくとも1つを実装する、請求項37に記載の方法。
- 前記IMDCTが、5点逆離散サイン変換タイプIVを使用して、640、320、160、80、40点変換のうちの少なくとも1つを実装する、請求項37に記載の方法。
- スケーラブルなスピーチおよびオーディオデコーダデバイスであって、
オーディオ信号を表すスペクトル係数入力値を受信することと、
複数の5点逆変換に再帰的にデシメートされる逆モディファイド離散コサイン変換(IMDCT)を使用して、前記スペクトル係数入力値を時間領域出力値に変換すること
を行うように適合された逆離散コサイン変換(DCT)タイプ変換層モジュール
を備えるデバイス。 - 前記複数の5点逆変換のうちの少なくとも1つが、12回加算演算、4回乗算演算、2回シフト演算、および4回演算の最長経路長によって因数分解される、少なくとも1つの逆離散コサイン変換タイプII(DCT−II)(3202)を含む、請求項45に記載のデバイス。
- 前記複数の5点逆変換のうちの少なくとも1つが、入力ベクトル[X0,X1,X2,X3,X4]をとって出力ベクトル[x0,x1,x2,x3,x4]を生成し、少なくとも以下の複数の中間結果によって特徴付けられる、少なくとも1つの逆離散コサイン変換タイプII(IDCT−II)(3202)を含み、
u1=X4−X2、
u5=X4+X2、
w0=X0+u1、
w5=X0−αu1、
w2=βX3−γX1、
w3=γX3−βX1、
w6=δu5、
w1=w5−w6、
w4=w5+w6、
ここで、
x0=w1−w2、
x1=w4+w3、
x2=w0、
x3=w4−w3、
x4=w1+w2、
上式で、
である、請求項45に記載のデバイス。 - スケーラブルなスピーチおよびオーディオデコーダデバイスであって、
オーディオ信号を表すスペクトル係数入力値を受信する手段と、
複数の5点逆変換に再帰的にデシメートされる逆モディファイド離散コサイン変換(IMDCT)を使用して、前記スペクトル係数入力値を時間領域出力値に変換する手段
を備えるデバイス。 - 前記複数の5点逆変換のうちの少なくとも1つが、12回加算演算、4回乗算演算、2回シフト演算、および4回演算の最長経路長によって因数分解される、少なくとも1つの逆離散コサイン変換タイプII(DCT−II)(3202)を含む、請求項48に記載のデバイス。
- 前記複数の5点逆変換のうちの少なくとも1つが、入力ベクトル[X0,X1,X2,X3,X4]をとって出力ベクトル[x0,x1,x2,x3,x4]を生成し、少なくとも以下の複数の中間結果によって特徴付けられる、少なくとも1つの逆離散コサイン変換タイプII(IDCT−II)(3202)を含み、
u1=X4−X2、
u5=X4+X2、
w0=X0+u1、
w5=X0−αu1、
w2=βX3−γX1、
w3=γX3−βX1、
w6=δu5、
w1=w5−w6、
w4=w5+w6、
ここで、
x0=w1−w2、
x1=w4+w3、
x2=w0、
x3=w4−w3、
x4=w1+w2、
上式で、
である、請求項48に記載のデバイス。 - オーディオ信号を表すスペクトル係数入力値を受信することと、
複数の5点逆変換に再帰的にデシメートされる逆モディファイド離散コサイン変換(IMDCT)を使用して、前記スペクトル係数入力値を時間領域出力値に変換すること
を行うように適合されたスケーラブルなスピーチおよびオーディオ復号回路を含むプロセッサであって、
前記複数の5点逆変換のうちの少なくとも1つが、入力ベクトル[X0,X1,X2,X3,X4]をとって出力ベクトル[x0,x1,x2,x3,x4]を生成し、少なくとも以下の複数の中間結果によって特徴付けられる、少なくとも1つの逆離散コサイン変換タイプII(IDCT−II)(3202)を含み、
u1=X4−X2、
u5=X4+X2、
w0=X0+u1、
w5=X0−αu1、
w2=βX3−γX1、
w3=γX3−βX1、
w6=δu5、
w1=w5−w6、
w4=w5+w6、
ここで、
x0=w1−w2、
x1=w4+w3、
x2=w0、
x3=w4−w3、
x4=w1+w2、
上式で、
である、プロセッサ。 - スケーラブルなスピーチおよびオーディオ復号のために動作可能な命令を備える機械可読媒体であって、前記命令が、1つまたは複数のプロセッサによって実行されたときに、
オーディオ信号を表すスペクトル係数入力値を受信することと、
複数の5点逆変換に再帰的にデシメートされる逆モディファイド離散コサイン変換(IMDCT)を使用して、前記スペクトル係数入力値を時間領域出力値に変換すること
を前記プロセッサに行わせ、
前記複数の5点逆変換のうちの少なくとも1つが、入力ベクトル[X0,X1,X2,X3,X4]をとって出力ベクトル[x0,x1,x2,x3,x4]を生成し、少なくとも以下の複数の中間結果によって特徴付けられる、少なくとも1つの逆離散コサイン変換タイプII(IDCT−II)(3202)を含み、
u1=X4−X2、
u5=X4+X2、
w0=X0+u1、
w5=X0−αu1、
w2=βX3−γX1、
w3=γX3−βX1、
w6=δu5、
w1=w5−w6、
w4=w5+w6、
ここで、
x0=w1−w2、
x1=w4+w3、
x2=w0、
x3=w4−w3、
x4=w1+w2、
上式で、
である、機械可読媒体。
Applications Claiming Priority (9)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US1357907P | 2007-12-13 | 2007-12-13 | |
| US61/013,579 | 2007-12-13 | ||
| US1610607P | 2007-12-21 | 2007-12-21 | |
| US61/016,106 | 2007-12-21 | ||
| US3919408P | 2008-03-25 | 2008-03-25 | |
| US61/039,194 | 2008-03-25 | ||
| US12/334,238 | 2008-12-12 | ||
| US12/334,238 US8631060B2 (en) | 2007-12-13 | 2008-12-12 | Fast algorithms for computation of 5-point DCT-II, DCT-IV, and DST-IV, and architectures |
| PCT/US2008/086739 WO2009076666A1 (en) | 2007-12-13 | 2008-12-13 | Fast algorithms for computation of 5-point dct-ii, dct-iv, and dst-iv, and architectures |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2011507037A true JP2011507037A (ja) | 2011-03-03 |
| JP5269908B2 JP5269908B2 (ja) | 2013-08-21 |
Family
ID=40754681
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2010538219A Active JP5269908B2 (ja) | 2007-12-13 | 2008-12-13 | 5点dct−ii、dct−iv、およびdst−ivの計算のための高速アルゴリズム、ならびにアーキテクチャ |
Country Status (12)
| Country | Link |
|---|---|
| US (1) | US8631060B2 (ja) |
| EP (1) | EP2225755A1 (ja) |
| JP (1) | JP5269908B2 (ja) |
| KR (1) | KR101226094B1 (ja) |
| CN (1) | CN101896966B (ja) |
| AU (1) | AU2008334935A1 (ja) |
| BR (1) | BRPI0820703A2 (ja) |
| CA (1) | CA2706283A1 (ja) |
| IL (1) | IL205835A0 (ja) |
| MX (1) | MX2010006471A (ja) |
| TW (1) | TWI405185B (ja) |
| WO (1) | WO2009076666A1 (ja) |
Families Citing this family (25)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20100172409A1 (en) * | 2009-01-06 | 2010-07-08 | Qualcom Incorporated | Low-complexity transforms for data compression and decompression |
| US9110849B2 (en) * | 2009-04-15 | 2015-08-18 | Qualcomm Incorporated | Computing even-sized discrete cosine transforms |
| US9069713B2 (en) * | 2009-06-05 | 2015-06-30 | Qualcomm Incorporated | 4X4 transform for media coding |
| US8762441B2 (en) * | 2009-06-05 | 2014-06-24 | Qualcomm Incorporated | 4X4 transform for media coding |
| US8451904B2 (en) | 2009-06-24 | 2013-05-28 | Qualcomm Incorporated | 8-point transform for media data coding |
| US9081733B2 (en) * | 2009-06-24 | 2015-07-14 | Qualcomm Incorporated | 16-point transform for media data coding |
| US9118898B2 (en) | 2009-06-24 | 2015-08-25 | Qualcomm Incorporated | 8-point transform for media data coding |
| US9075757B2 (en) * | 2009-06-24 | 2015-07-07 | Qualcomm Incorporated | 16-point transform for media data coding |
| BR112012009446B1 (pt) | 2009-10-20 | 2023-03-21 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V | Método e aparelho de armazenamento de dados |
| CN102104776A (zh) * | 2009-12-21 | 2011-06-22 | 康佳集团股份有限公司 | 一种网络电视平台mpeg音频多相合成滤波方法 |
| MY160067A (en) | 2010-01-12 | 2017-02-15 | Fraunhofer Ges Forschung | Audio encoder, audio decoder, method for encoding and audio information, method for decording an audio information and computer program using a modification of a number representation of a numeric previous context value |
| CN101894557B (zh) * | 2010-06-12 | 2011-12-07 | 北京航空航天大学 | 一种用于aac编码的窗型判别方法 |
| US8417045B2 (en) | 2010-07-29 | 2013-04-09 | Infoprint Solutions Company Llc | Mechanism for processing order-16 discrete cosine transforms |
| US9824066B2 (en) * | 2011-01-10 | 2017-11-21 | Qualcomm Incorporated | 32-point transform for media data coding |
| KR101362696B1 (ko) * | 2011-10-19 | 2014-02-17 | 전북대학교산학협력단 | 하이브리드 아키텍쳐가 적용된 신호 변환 장치, 신호 변환 방법 및 기록매체 |
| CN102568485B (zh) * | 2011-12-30 | 2013-12-11 | 展讯通信(上海)有限公司 | 音频信号的频时转换方法及装置 |
| TWI443527B (zh) * | 2012-01-02 | 2014-07-01 | Univ Nat Cheng Kung | 遞迴式第四型離散餘弦之系統 |
| CN103257953B (zh) * | 2013-05-06 | 2016-04-13 | 福州瑞芯微电子股份有限公司 | Imdct36运算模块及方法 |
| WO2015172337A1 (en) | 2014-05-14 | 2015-11-19 | Mediatek Singapore Pte. Ltd. | Alternative transforms for data compression |
| CN107005695B (zh) | 2014-11-28 | 2020-01-07 | 联发科技股份有限公司 | 用于视频编码的替代变换的方法及装置 |
| EP4300968A1 (en) * | 2016-05-13 | 2024-01-03 | Sony Group Corporation | Image processing device and method |
| KR102357329B1 (ko) * | 2016-07-14 | 2022-02-03 | 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. | 변환 기반 잔차 코딩을 이용한 예측 화상 코딩 |
| US10536720B2 (en) * | 2018-05-07 | 2020-01-14 | Tencent America LLC | Method, apparatus and medium for decoding or encoding |
| CN111294782B (zh) * | 2020-02-25 | 2022-02-08 | 北京百瑞互联技术有限公司 | 一种加速编解码专用集成电路及方法 |
| WO2022158943A1 (ko) | 2021-01-25 | 2022-07-28 | 삼성전자 주식회사 | 다채널 오디오 신호 처리 장치 및 방법 |
Family Cites Families (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| RU2131169C1 (ru) | 1993-06-30 | 1999-05-27 | Сони Корпорейшн | Устройство кодирования сигнала, устройство декодирования сигнала, носитель записи и способ кодирования и декодирования |
| TW321810B (ja) * | 1995-10-26 | 1997-12-01 | Sony Co Ltd | |
| US6496795B1 (en) * | 1999-05-05 | 2002-12-17 | Microsoft Corporation | Modulated complex lapped transform for integrated signal enhancement and coding |
| US6513004B1 (en) | 1999-11-24 | 2003-01-28 | Matsushita Electric Industrial Co., Ltd. | Optimized local feature extraction for automatic speech recognition |
| TW507194B (en) | 2000-05-24 | 2002-10-21 | Nat Science Council | Variable-rate residual-transform vocoders using auditory perception approximation |
| DE60132853D1 (de) | 2000-07-07 | 2008-04-03 | Nokia Siemens Networks Oy | Verfahren und Vorrichtung für die perzeptuelle Tonkodierung von einem mehrkanal Tonsignal mit Verwendung der kaskadierten diskreten Cosinustransformation oder der modifizierten diskreten Cosinustransformation |
| US20020040299A1 (en) * | 2000-07-31 | 2002-04-04 | Kenichi Makino | Apparatus and method for performing orthogonal transform, apparatus and method for performing inverse orthogonal transform, apparatus and method for performing transform encoding, and apparatus and method for encoding data |
| US7216140B1 (en) * | 2000-09-30 | 2007-05-08 | Intel Corporation | Efficient implementation of n-point DCT, n-point IDCT, SA-DCT and SA-IDCT algorithms |
| US6636830B1 (en) | 2000-11-22 | 2003-10-21 | Vialta Inc. | System and method for noise reduction using bi-orthogonal modified discrete cosine transform |
| RU2216791C1 (ru) | 2002-04-29 | 2003-11-20 | Военный университет связи | Способ сжатия и восстановления речевых сообщений |
| KR100462611B1 (ko) | 2002-06-27 | 2004-12-20 | 삼성전자주식회사 | 하모닉 성분을 이용한 오디오 코딩방법 및 장치 |
| CN100570597C (zh) | 2003-09-29 | 2009-12-16 | 新加坡科技研究局 | 将数字信号从时间域变换到频率域及其反向变换的方法 |
| EP1711938A1 (en) | 2004-01-28 | 2006-10-18 | Koninklijke Philips Electronics N.V. | Audio signal decoding using complex-valued data |
| TWI321810B (en) | 2005-01-07 | 2010-03-11 | Hon Hai Prec Ind Co Ltd | Plasma enhanced sputtering method and apparatus |
| US8233727B2 (en) * | 2007-10-19 | 2012-07-31 | Research In Motion Limited | Arbitrary ratio image resizing in the DCT domain |
-
2008
- 2008-12-12 US US12/334,238 patent/US8631060B2/en active Active
- 2008-12-13 MX MX2010006471A patent/MX2010006471A/es not_active Application Discontinuation
- 2008-12-13 CA CA2706283A patent/CA2706283A1/en not_active Abandoned
- 2008-12-13 JP JP2010538219A patent/JP5269908B2/ja active Active
- 2008-12-13 CN CN2008801202817A patent/CN101896966B/zh active Active
- 2008-12-13 WO PCT/US2008/086739 patent/WO2009076666A1/en not_active Ceased
- 2008-12-13 KR KR1020107015493A patent/KR101226094B1/ko not_active Expired - Fee Related
- 2008-12-13 AU AU2008334935A patent/AU2008334935A1/en not_active Abandoned
- 2008-12-13 BR BRPI0820703-8A patent/BRPI0820703A2/pt not_active IP Right Cessation
- 2008-12-13 EP EP08859899A patent/EP2225755A1/en not_active Ceased
- 2008-12-15 TW TW097148864A patent/TWI405185B/zh not_active IP Right Cessation
-
2010
- 2010-05-17 IL IL205835A patent/IL205835A0/en unknown
Non-Patent Citations (1)
| Title |
|---|
| JPN6012029259; Vladimir Britanak and K.R.Rao: 'An Efficient Implementation of the Forward and Inverse MDCT in MPEG Audio Coding' IEEE Signal Processing Letters, Vol.8,No.2, 200102, pp.48-51 * |
Also Published As
| Publication number | Publication date |
|---|---|
| IL205835A0 (en) | 2010-11-30 |
| BRPI0820703A2 (pt) | 2015-06-16 |
| CN101896966B (zh) | 2012-11-21 |
| US20090157785A1 (en) | 2009-06-18 |
| MX2010006471A (es) | 2010-09-28 |
| KR20100103580A (ko) | 2010-09-27 |
| US8631060B2 (en) | 2014-01-14 |
| TWI405185B (zh) | 2013-08-11 |
| CN101896966A (zh) | 2010-11-24 |
| EP2225755A1 (en) | 2010-09-08 |
| WO2009076666A1 (en) | 2009-06-18 |
| KR101226094B1 (ko) | 2013-01-24 |
| TW200947419A (en) | 2009-11-16 |
| CA2706283A1 (en) | 2009-06-18 |
| JP5269908B2 (ja) | 2013-08-21 |
| AU2008334935A1 (en) | 2009-06-18 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP5269908B2 (ja) | 5点dct−ii、dct−iv、およびdst−ivの計算のための高速アルゴリズム、ならびにアーキテクチャ | |
| KR101286329B1 (ko) | 저 복잡도의 스펙트럼 대역 복제 (sbr) 필터뱅크 | |
| TWI398854B (zh) | 用於計算轉換值及執行定窗運算之方法、裝置、電路及電腦可讀媒體,及用於提供一解碼器之方法 | |
| KR100778349B1 (ko) | 이산값의 시퀀스를 갖는 신호 처리 장치 및 방법 | |
| CN100416553C (zh) | 用于转换为变换表示或对变换表示进行反转换的设备和方法 | |
| JP3814611B2 (ja) | 時間離散オーディオサンプル値を処理する方法と装置 | |
| JP6089878B2 (ja) | 直交変換装置、直交変換方法及び直交変換用コンピュータプログラムならびにオーディオ復号装置 | |
| RU2464540C2 (ru) | Быстрые алгоритмы для вычисления 5-точечного dct-ii, dct-iv и dst-iv, и архитектуры | |
| HK1145563A (en) | Fast algorithms for computation of 5-point dct-ii, dct-iv, and dst-iv, and architectures | |
| HK1143240B (en) | Efficient design of mdct / imdct filterbanks for speech and audio coding applications |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120531 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120612 |
|
| A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20120808 |
|
| A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20120815 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121112 |
|
| 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: 20130409 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130508 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 5269908 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| 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 |
|
| 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 |
|
| 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 |