TWI405185B - 用於5點離散餘弦轉換-ii(dct-ii),離散餘弦轉換-iv(dct-iv)及離散正弦轉換-iv(dst-iv)之計算的快速演算法與結構 - Google Patents
用於5點離散餘弦轉換-ii(dct-ii),離散餘弦轉換-iv(dct-iv)及離散正弦轉換-iv(dst-iv)之計算的快速演算法與結構 Download PDFInfo
- Publication number
- TWI405185B TWI405185B TW097148864A TW97148864A TWI405185B TW I405185 B TWI405185 B TW I405185B TW 097148864 A TW097148864 A TW 097148864A TW 97148864 A TW97148864 A TW 97148864A TW I405185 B TWI405185 B TW I405185B
- Authority
- TW
- Taiwan
- Prior art keywords
- point
- dct
- cosine transform
- discrete cosine
- conversion
- Prior art date
Links
- 238000004422 calculation algorithm Methods 0.000 title description 13
- 238000006243 chemical reaction Methods 0.000 claims description 358
- 230000007704 transition Effects 0.000 claims description 94
- 238000000034 method Methods 0.000 claims description 70
- 239000013598 vector Substances 0.000 claims description 69
- 230000005236 sound signal Effects 0.000 claims description 29
- 230000003595 spectral effect Effects 0.000 claims description 29
- 238000013461 design Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 46
- 230000006870 function Effects 0.000 description 38
- 239000011159 matrix material Substances 0.000 description 30
- 238000007792 addition Methods 0.000 description 29
- 230000008569 process Effects 0.000 description 16
- 238000005070 sampling Methods 0.000 description 11
- 238000004364 calculation method Methods 0.000 description 9
- 238000004458 analytical method Methods 0.000 description 8
- 230000015572 biosynthetic process Effects 0.000 description 7
- 238000003786 synthesis reaction Methods 0.000 description 7
- 230000009466 transformation Effects 0.000 description 7
- 238000013507 mapping Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 4
- 238000000354 decomposition reaction Methods 0.000 description 3
- 238000009795 derivation Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 239000002245 particle Substances 0.000 description 2
- 230000002730 additional effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Software Systems (AREA)
- Signal Processing (AREA)
- Algebra (AREA)
- General Engineering & Computer Science (AREA)
- Discrete Mathematics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Computational Linguistics (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Complex Calculations (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Description
以下描述大體上係關於編碼器及解碼器,且詳言之,係關於語音及音訊編解碼器之有效MDCT/IMDCT實施。
本專利申請案主張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號之優先權,該兩申請案已讓與給其受讓人且在此以引用之方式明確地併入本文中。
音訊編碼之一目標為將音訊信號壓縮為所要有限資訊量,同時儘可能保持原音質。在編碼過程中,時域中之音訊信號經轉換至頻域,且相應解碼過程反轉此運算。
作為此編碼過程之一部分,信號可藉由修改型離散餘弦轉換(MDCT)加以處理。修改型離散餘弦轉換(MDCT)為基於IV型離散餘弦轉換(DCT-IV)之傅立葉相關轉換,其具有區塊經重疊以使得一區塊之結束與下一區塊之開始重合之額外性質。此重疊有助於避免混疊假影,且除DCT之能量集中品質以外,使MDCT對信號壓縮應用尤其有吸引力。
MDCT轉換亦已應用於話音壓縮中。ITU-T G.722.1及G.722.1C聲碼器將MDCT應用於輸入話音信號上,而更新近的ITU-T G.729.1及G.718演算法使用其來處理在使用碼激勵線性預測(CELP)編碼器之後剩餘的殘留信號。以上所提及之聲碼器以8kHz或16kHz及10或20毫秒訊框之輸入取樣率操作。因此,其MDCT濾波器組為160或320點轉換。
然而,若未來話音編碼器將支援區塊交換功能性,則亦可能需要對分樣大小(例如,160、80、40點)之支援。因此,需要小轉換大小之有效實施以使用小大小的核心轉換來實施較大轉換。
以下呈現對一或多個實施例之簡化概述以便提供對一些實施例之基本理解。此概述並非所有預期實施例之廣泛綜述,且既不欲識別所有實施例之關鍵或重要要素,亦不欲描繪任何或所有實施例之範疇。其唯一目的為以簡化形式呈現一或多個實施例之一些概念,以作為稍後呈現之更詳細描述之序部。
編碼方法及/或器件經提供用於計算轉換值。接收表示音訊信號之時域輸入值。使用經遞歸地分樣至複數個5點轉換之修改型離散餘弦轉換(MDCT)將輸入值轉換為頻譜係數。可實施各種因子分解以有效地處理5點轉換。
在一實例(圖5)中,複數個5點轉換中之至少一者可包括因子分解為12個加法運算、8個乘法運算及具有3個運算之最長路徑長度之至少一離散餘弦轉換類型II(DCT-II)(502)。舉例而言,複數個5點轉換中之至少一者包括至少一離散餘弦轉換類型II(DCT-II)(502),其採用輸入向量[x0,x1,x2,x3,x4]來產生輸出向量[X0,X1,X2,X3,X4],且以至少複數個中間結果為特徵:
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;
在另一實例(圖6)中,複數個5點轉換中之至少一者包括因子分解為12個加法運算、5個乘法運算、2個移位運算及具有4個運算之最長路徑長度之至少一離散餘弦轉換類型II(DCT-II)(602)。舉例而言,複數個5點轉換中之至少一者包括至少一離散餘弦轉換類型II(DCT-II)(602),其採用輸入向量[x0,x1,x2,x3,x4]來產生輸出向量[X0,X1,X2,X3,X4],且以至少複數個中間結果為特徵:
w0=x0-x4;
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;
在另一實例(圖7)中,複數個5點轉換中之至少一者可包括因子分解為12個加法運算、5個乘法運算、1個移位運算及具有4個運算之最長路徑長度之至少一離散餘弦轉換類型II(DCT-II)(702)。舉例而言,複數個5點轉換中之至少一者包括至少一離散餘弦轉換類型II(DCT-II)(702),其採用輸入向量[x0,x1,x2,x3,x4]來產生輸出向量[X0,X1,X2,X3,X4],且以具有下列中間結果為特徵:
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+x20.25*t4-(c'*t2-x2);
在另一實例(圖8)中,複數個5點轉換中之至少一者可包括因子分解為12個加法運算、4個乘法運算、2個移位運算及具有4個運算之最長路徑長度之至少一離散餘弦轉換類型II(DCT-II)(802)。舉例而言,複數個5點轉換中之至少一者包括至少一離散餘弦轉換類型II(DCT-II)(802),其採用輸入向量[x0,x1,x2,x3,x4]來產生輸出向量[X0,X1,X2,X3,X4],且以至少複數個中間結果為特徵:
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點轉換中之至少一者可包括因子分解為12個加法運算、5個乘法運算、1個移位運算及具有4個運算之最長路徑長度之至少一轉換(802)。
在另一實例(圖9)中,複數個5點轉換中之至少一者可包括因子分解為20個加法運算、16個乘法運算及具有3個運算之最長路徑長度之離散餘弦轉換類型IV(DCT-IV)(902)。舉例而言,複數個5點轉換中之至少一者可包括至少一離散餘弦轉換類型IV(DCT-IV)(902),其採用輸入向量[x0,x1,x2,x3,x4]來產生輸出向量[X0,X1,X2,X3,X4],且以至少複數個中間結果為特徵:
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。
在另一實例(圖10)中,複數個5點轉換中之至少一者可包括因子分解為20個加法運算、12個乘法運算及具有4個運算之最長路徑長度之離散餘弦轉換類型IV(DCT-IV)(1002)。舉例而言,複數個5點轉換中之至少一者可包括至少一離散餘弦轉換類型IV(DCT-IV)(1002),其採用輸入向量[x0,x1,x2,x3,x4]來產生輸出向量[X0,X1,X2,X3,X4],且以至少複數個中間結果為特徵:
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;
在另一實例(圖14)中,複數個5點轉換中之至少一者可包括因子分解為16個加法運算、9個乘法運算及具有5個運算之最長路徑長度之離散餘弦轉換類型IV(DCT-IV)(1402)。舉例而言,複數個5點轉換中之至少一者可包括至少一離散餘弦轉換類型IV(DCT-IV)(1402),其採用輸入向量[x0,x1,x2,x3,x4]來產生輸出向量[X0,X1,X2,X3,X4],且以至少複數個中間結果為特徵:
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;
在另一實例(圖15)中,其中複數個5點轉換中之至少一者可包括因子分解為15個加法運算、10個乘法運算、2個類型IV(DCT-IV)(1502)。舉例而言,複數個5點轉換中之至少一者可包括至少一離散餘弦轉換類型IV(DCT-IV)(1502),其採用輸入向量[x0,x1,x2,x3,x4]來產生輸出向量[X0,X1,X2,X3,X4],且以至少複數個中間結果為特徵:
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;
在另一實例(圖16)中,複數個5點轉換中之至少一者可包括因子分解為15個加法運算、11個乘法運算、2個移位運算及具有5個運算之最長路徑長度之離散餘弦轉換類型IV(DCT-IV)(1602/1702)。舉例而言,複數個5點轉換中之至少一者可包括至少一離散餘弦轉換類型IV(DCT-IV)(1602),其採用輸入向量[x0,x1,x2,x3,x4]來產生輸出向量[X0,X1,X2,X3,X4],且以至少複數個中間結果為特徵:
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;
在另一實例(圖17)中,複數個5點轉換中之至少一者可包括至少一離散餘弦轉換類型IV(DCT-IV)(1702),其採用輸入向量[x0,x1,x2,x3,x4]來產生輸出向量[X0,X1,X2,X3,X4],且以至少複數個中間結果為特徵:
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;
在另一實例(圖18)中,複數個5點轉換中之至少一者可包括因子分解為15個加法運算、12個乘法運算、2個移位運算及具有5個運算之最長路徑長度之離散餘弦轉換類型IV(DCT-IV)(1802)。舉例而言,複數個5點轉換中之至少一者可包括至少一離散餘弦轉換類型IV(DCT-IV)(1802),其採用輸入向量[x0,x1,x2,x3,x4]來產生輸出向量[X0,X1,X2,X3,X4],且以下列中間結果為特徵:
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;
另外,轉換方法及/或器件可在執行轉換之前對輸入值執行開窗運算,其中開窗運算實施不對稱窗函數。
在一些實施例中,MDCT可使用5點離散餘弦轉換類型II來實施640、320、160、80、40點轉換中之至少一者。
在其他實施例中,MDCT可使用5點離散餘弦轉換類型IV來實施640、320、160、80、40點轉換中之至少一者。
在其他實施例中,MDCT可使用5點離散餘弦轉換類型II及5點離散餘弦轉換類型IV來實施640、320、160、80、40點轉換中之至少一者。
在其他實施例中,MDCT使用5點離散正弦轉換類型IV來實施640、320、160、80、40點轉換中之至少一者。
解碼方法及/或器件經提供用於計算反轉換值。接收表示音訊信號之頻譜係數輸入值。接著使用經遞歸地分樣至複數個5點反轉換之反修改型離散餘弦轉換(IMDCT)將頻譜係數輸入值轉換為時域輸出值。
在一實例(圖32)中,複數個5點反轉換中之至少一者可包括因子分解為12個加法運算、4個乘法運算、2個移位運算及具有4個運算之最長路徑長度之至少一反離散餘弦轉換類型II(IDCT-II)(3202)。舉例而言,複數個5點反轉換中之至少一者可包括至少一反離散餘弦轉換類型II(IDCT-II)(3202),其採用輸入向量[X0,X1,X2,X3,X4]來產生輸出向量[x0,x1,x2,x3,x4],且以至少複數個中間結果為特徵:
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;
另外,解碼方法及/或器件可在執行反轉換之後對輸入值執行開窗運算,其中開窗運算實施不對稱窗函數。
在一實施例中,IMDCT可使用5點反離散餘弦轉換類型II來實施640、320、160、80、40點轉換中之至少一者。
在另一實施例中,IMDCT可使用5點反離散餘弦轉換類型IV來實施640、320、160、80、40點轉換中之至少一者。
在又一實施例中,IMDCT可使用5點反離散餘弦轉換類型II及5點反離散餘弦轉換類型IV來實施640、320、160、80、40點轉換中之至少一者。
在一實施例中,IMDCT可使用5點反離散正弦轉換類型IV來實施640、320、160、80、40點轉換中之至少一者。
各種特徵、性質及優勢可自以下所陳述之實施方式(在結合諸圖式考慮時)而變得顯而易見,在諸圖式中,通篇中相同參考符號識別對應物。
現參看圖式描述各種實施例,其中相同參考數字始終用於指代相同元件。在以下描述中,為解釋起見,陳述許多特定細節以便提供對一或多個實施例之透徹理解。然而,可顯而易見,可在無此等特定細節之情況下實踐此(等)實施例。在其他例子中,以方塊圖形式展示熟知結構及器件以便促進描述一或多個實施例。
一特徵藉由將N點MDCT轉換映射至較小大小之N/2點DCT-IV、DST-IV及/或DCT-II轉換來實施N點MDCT轉換(其中N=5*2^K,對於一些整數K>=1)。在一實例中,MDCT可對稱地分樣因數2,且在最後階段利用經定標5點核心函數。一特徵提供若干快速演算法以用於計算大小為5之DCT-II、DCT-IV及DST-IV核心轉換。此處所主張之總轉換架構為通用分樣過程,其將大小為N之轉換遞歸地分成大小為N/2之兩個轉換,其中N=5*2^K,且其中最後(最小)5點轉換藉由使用本文中所述之快速技術來實施。此大小之轉換出現在用於話音及音訊編碼應用之MDCT濾波器組的設計中,諸如,最近及新興標準G.729.1、G.718及EVRC-WB。
另一特徵提供使用MDCT之修改型開窗階段,其組合用於計算MDCT之以上架構與不對稱窗以減小與轉換階段相關聯的延遲,同時保持相同數目之頻率係數。
圖1為說明可包括MDCT分析濾波器組之編碼器之一實例的方塊圖。編碼器102可接收輸入音訊信號104。MDCT分析濾波器組106(亦即,基於IV型離散餘弦轉換之修改型離散餘弦轉換)操作以將時域輸入音訊信號104分解成複數個次頻帶信號且將信號變換至頻域,其中每一次頻帶信號變換為每區塊每次頻帶之轉換係數。所得信號接著由量化器108量化,且由熵編碼器110編碼以產生數位化音訊信號之位元流112。根據一實例,MDCT分析濾波器組106可由開窗函數114、轉換116(例如,時域至頻域)及/或定標函數118實施。包括開窗函數114、轉換116及/或定標函數118之MDCT分析濾波器組106可在硬體(例如,處理器、電路、可程式化邏輯器件等)、軟體(例如,可由處理器執行之指令)及/或其組合中實施。
圖2為說明轉換可如何由較小轉換實施之一實例的方塊圖。在此實例中,圖1之轉換116可接收複數個輸入202且產生複數個輸出204。為完成此,轉換116可由具有相同或較小大小之一或多個轉換表示。舉例而言,轉換116可由複數個k點DCT-IV轉換206a及206b實施。又,每一k點DCT-IV轉換206a及206b可由一或多個n點DCT-II轉換208a、208b或210a、210b實施。注意,在一些實施例中,離散正弦轉換(DST)-IV可代替DCT-IV轉換而使用。藉由將較大轉換116遞歸地分成複數個較小轉換208,此方式簡化較大轉換116之實施。然而,需要較小轉換之有效演算法實施來達成最小化運算之快速轉換效能。在一實例中,轉換116可接收表示音訊信號之時域輸入值x(0)…x(m)202,且將其轉換為頻域頻譜係數X(0)…X(m)204。以下描述此等較小轉換之各種實施例。
圖3為說明可包括IMDCT合成濾波器組之解碼器之一實例的方塊圖。解碼器302可接收位元流304。熵解碼器306解碼位元流304,其接著由解量化器308解量化以產生頻域信號。IMDCT合成濾波器組310(亦即,基於IV型離散餘弦轉換之反修改型離散餘弦轉換)操作以將頻域信號304變換回至時域音訊信號312。IMDCT合成濾波器組310可反轉MDCT分析濾波器組106之運算。根據一實例,IMDCT合成濾波器組310可由定標函數314、反轉換316(例如,頻域至時域)及/或開窗加重疊及加法函數318實施。包括定標函數314、反轉換316及/或開窗函數318之IMDCT合成濾波器組310可在硬體(例如,處理器、電路、可程式化邏輯器件等)、軟體(例如,可由處理器執行之指令)及/或其組合中實施。
圖4為說明反轉換可如何由較小反轉換實施之一實例的方塊圖。在此實例中,圖3之反轉換316可接收複數個輸入402且產生複數個輸出404。為完成此,反轉換316可由具有相同或較小大小之一或多個轉換表示。舉例而言,反轉換316可由複數個k點IDCT-IV反轉換406a及406b實施。又,每一k點IDCT-IV反轉換406a及406b可由一或多個n點IDCT-II轉換408a、408b或410a、410b實施。注意,在一些實施例中,反離散正弦轉換(IDST)-IV可代替IDCT-IV轉換而使用。在一實例中,轉換316可接收表示音訊信號之頻域頻譜係數X(0)…X(m)402且將其轉換為時域重構輸出值x(0)…x(m)404。然而,需要較小反轉換之有效演算法實施來達成最小化運算之快速轉換效能。
注意,至MDCT 102及IMDCT 302轉換之輸入可處理為具有複數個資料點之訊框或區塊。因此,為使基於MDCT之聲碼器(諸如G.722.1或G.722.1C)支援具有小於320之訊框長度的資料塊,需要經分樣大小之轉換。對於具有160、80、40等訊框長度之區塊,已觀察到此等大小皆為5之倍數。因此,最後不可約(藉由分樣技術)之區塊大小可使用大小為5之轉換。已觀察到,在計算複雜性方面,設計5點DCT-II轉換比DCT-IV或FFF轉換有效得多。
使用矩陣記法,MDCT轉換可由矩陣M表示:
因此,,其中x
表示輸入樣本[x
(0),...,x
(N
-1)] T
之矩陣,X
表示所得MDCT係數之矩陣,且表示重構輸出之矩陣。
為實施MDCT轉換,可將其映射至N/2點核心轉換函數。舉例而言,圖1之轉換116可實施為一或多個N/2點DCT-IV轉換。
DCT-IV轉換可界定為:
同時,IDCT-IV轉換可界定為:
可將MDCT轉換映射至N/2點DCT-IV轉換:
且可將IMDCT轉換映射至N/2點IDCT-IV轉換:
其中:
其中I N /4
為N/4×N/4單位矩陣,且J N /4
為N/4×N/4次序反轉矩陣,且矩陣S界定為
且為N/2×N/2 DCT-IV矩陣,其可界定為
藉由使用DCT-IV矩陣之對稱性及對合性質,可將其映射至DCT-II轉換。DCT-II轉換可界定為:
同樣地,IDCT-II轉換可界定為:
其中,若k
=0,則λ(k
)=1/,若k
≠0,則λ(k
)=1。
根據一特徵,轉換116(圖1)及反轉換316(圖3)可經分樣並由一或多個DCT-IV或DST-IV(及IDCT-IV或DST-IV)轉換實施,其可分別實施為一或多個DCT-II(及IDCT-II)轉換。
DCT-IV及IDCT-IV可相應地界定為:
DST-IV及IDST-IV可相應地界定為:
類似地,DCT-II及其反轉換可相應地界定為:
其中若k
=0,則λ(k
)=1/2,時,若k
≠0,則λ(k
)=1。
在方程式1-6中,{x(n)}對於n=0,1,…N-1表示樣本之輸入序列,N
指示訊框長度,X
(k
)為所得MDCT係數。
在N=5之狀況下,DCT-IV轉換之矩陣C_IV、DST-IV轉換之矩陣S_IV及DCT-II轉換之矩陣C_II可相應地表示為:
為了簡化DCT-II之表示,可忽略因子λ(k
)=1/,且可將所有係數乘以,同時使用以下記法:
藉此產生:
此處,注意,a 2
+b 2
=1.25,且c 2
+d 2
=0.75。此外,亦注意,c
-d
=0.5。此係根據所涉及餘弦值之代數表達式得出:
類似地,在DCT-IV之狀況下,將所有係數乘以,且使用記法:
從而產生:
注意,f 2
+i 2
=2,且類似地,g 2
+h 2
=2。此外,注意,,且。此係根據所涉及餘弦值之代數表達式得出:
最後,在DST-IV之狀況下,可將所有係數乘以,且使用記法:
以產生:
類似於DCT-IV之狀況,注意,此處f 2
+i 2
=2,且類似地,g 2
+h 2
=2。
為了達成處理效率,由較大轉換所使用之最小大小轉換應為快速且有效的。此藉由最小化由此等小大小的轉換所執行之運算(例如,乘法、加法及移位)來完成。因此,可實施最小大小轉換之各種因子分解以達成此。實施哪一轉換因子分解之選擇可視各種因素而定,包括所使用處理器之能力。
有效DCT-II轉換可以各種方式實施。舉例而言,假定至轉換之輸入由輸入向量x提供,以使得
向量x與經定標之DCT-II矩陣(如在矩陣D中以定標)之乘積產生DCT-II矩陣X
:
考慮此矩陣X
中之奇數係數X1及X3的計算:
X1=a*x0+b*x1-b*x3-a*x4=a*(x0-x4)+b*(x1-x3);
X3=b*x0-a*x1+a*x3-b*x4=b*(x0-x4)-a*(x1-x3);
此提示,係數X1與X3兩者皆可計算為對x0-x4及x1-x3之簡單蝴蝶運算。現在,考慮此矩陣X
中之偶數係數X2及X4的計算:
X2=c*x0+d*x1-d*x3+c*x4-x2=c*(x0+x4)-d*(x1+x3)-x2;
X4=d*x0-c*x1-c*x3+d*x4+x2=d*(x0+x4)-c*(x1+x3)+x2;
此處,再次,看來計算可組織為對x0+x4及x1+x3之簡單蝴蝶運算。
實際轉換運算可藉由重排內部轉換運算以減少加法、乘法及/或移位之總數目來有效地實施。因此,不同中間結果可由轉換之不同因子分解達成,且此等中間結果構成每一相應轉換的特徵。
圖5為說明5點DCT-II轉換502之因子分解之第一實例的流程圖。在此實例中,利用在以上所提到的矩陣X
之奇數係數X1及X3與偶數係數X2及X4之間的關係來表示5點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;
其中輸入係數504(x0,x1,x2,x3,x4)經轉換為輸出係數506(X0,X1,X2,X3,X4)。圖5之此方案的複雜性為12個加法及8個乘法。詳言之,實施第一蝴蝶運算508以獲得輸出係數X1及X3,且實施第二蝴蝶運算510以獲得輸出係數X2及X4。此轉換502中之最長路徑僅為3個運算(加法及/或乘法,假定蝴蝶運算對於每一路徑僅需要1個MAC)。由"蝴蝶運算"所執行之運算通常稱為平面旋轉或格文斯旋轉(Givens rotation)。
圖6為說明5點DCT-II轉換602之因子分解之第二實例的流程圖。此轉換602可得自圖5之轉換502以將輸入係數504轉換為輸出係數506。在此實施例中,至第二蝴蝶運算510之輸入(圖5)經表示為值z4=x0+x4及z2=x1+x3,且可沿正向路徑相加至X0。
因此,中間結果經計算為:
w0=x0-x4;
w1=x1-x3;
z2=x1+x3;
z4=x0+x4;
u2=z2+z4。
另外,c-d=0.5的事實用於將輸出X0、X2及X4表示為:
X0=z4+z2+x2;
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。
因此,5點DCTII轉換602以下列各項為特徵:
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。
此轉換602之複雜性為12個加法、5個乘法及2個移位。注意,此轉換中之因數1/2為二進有理數,且因此與1/2之此"乘法"僅為二元移位運算(亦即,移位)。最長路徑長度此處為4個運算。
圖7為說明5點DCT-II轉換702之因子分解之第三實例的流程圖。此轉換702可得自圖6之轉換602以將輸入係數504轉換為輸出係數506。係數X2及X4之方程式可表示為:
X2=c*(z4+z2)+0.5*z2-x2=c'*(z4+z2)+d'*(z4-z2)-x2;
X4=-c*(z4+z2)-0.5*z4+x2=-c'*(z4+z2)+d'*(z4-z2)+x2;
其值c'及d'經選擇以使得:
c*(z4+z2)+0.5*z2=c'*(z4+z2)+d'(z4-z2) (方程式7)
-c*(z4+z2)-0.5*z4=-c'*(z4+z2)+d'(z4-z2)。
方程式7可經重排以使得:
z4*c+z2*(c+0.5)=z4*(c'+d')+z2*(c'-d')。
因此,可展示:
c=c'+d';且
c+0.5=c'-d'。
藉由此等兩個方程式相減,可展示:
0.5=-2d';或
d'=-0.25,且
c'=c-d'=c+0.25。
因此,輸出係數X2及X4可表示為:
X2=c'*(z4+z2)-0.25*(z4-z2)-x2=0.25*(z2-z4)+(c'*(z4+z2)-x2);
X4=-c'*(z4+z2)-0.25*(z4-z2)+x2=0.25*(z2-z4)-(c'*(z4+z2)-x2);
其得出圖7之轉換702。
因此,中間結果經計算為:
w0=x0-x4;
w1=x1-x3;
z2=x1+x3;
z4=x0+x4;
t2=z2+z4;
t4=z2-z4;
c'=c+0.25。
因此,5點DCTII轉換702以下列各項為特徵:
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)。
此轉換702可以12個加法、5個乘法及1個移位實施。注意,此轉換702中之因數1/4為二進有理數,且因此與1/4之此"乘法"僅為二元移位運算(亦即,移位)。最長路徑長度此處亦為4個運算。
圖8為說明5點DCT-II轉換802之因子分解之替代實例的流程圖。注意,此轉換中之因數α為二進有理數,且因此與其之乘法僅為二元移位運算。此5點轉換可使用平面旋轉及5個乘法或藉由對平面旋轉進行因子分解或使用提昇步驟(lifting step)而使用4個乘法來實施。對於具有輸入x 504之5點序列,5點DCT-II轉換802之輸出X
506可使用4個非顯明乘法(non-trivial multiplication)、12個加法及2個移位或5個乘法、12個加法及1個移位來產生。
在此實例中,乘數為:
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。
因此,DCT-II轉換802之輸出X0、X1、X2、X3及X4可經表示為:X0=u2;X1=u4;X2=u4-u1;X3=u3;X4=u1+u5。
注意,圖5至圖9中所說明之轉換(及本文中之其他轉換)的中間結果可在選擇轉換流程圖中之不同點時改變。因此,可自此等轉換流程圖預期且理解較多或較少中間結果及/或不同中間結果(例如,在流程圖中之不同點)。
圖4至圖20中所說明之轉換可經倒轉以反轉本文中所說明之正轉換。圖32說明對應於圖8之正轉換的反轉換(5點IDCT-II反轉換)。反轉換3202將輸入3204(頻譜係數)轉換為輸出(時域值)3206,且可以下列中間結果為特徵:u1=X4-X2;u5=X4+X2;w0=X0+u1;w5=X0-αu1;w2=βX3-γX1w3=γX3-βX1;//與流程圖相比在軟體中使用否定因數(negated factor)//w6=δu5;w1=w5-w6;w4=w5+w6;其中:
因此,IDCT-II轉換3202之輸出xO、x1、x2、x3及x4 3206可計算為:x0=w1-w2;x1=w4+w3;x2=w0;x3=w4-w3;x4=w1+w2。
用於計算5點DCT-IV及DST-IV之快速演算法的導出
有效DCT-IV轉換及/或DST-IV可以各種方式實施。舉例而言,假定至轉換之輸入由向量x提供,以使得
向量x與經定標DCT-IV矩陣(如在矩陣E中以定標)之乘積產生DCT-IV矩陣X
:
圖9為說明5點DCT-IV轉換902之因子分解之第一實例的流程圖。轉換902將輸入係數x904變換為輸出係數X906。轉換902藉由項之以下簡單重新排序來獲得:X0=f*x0+i*x4+g*x1+h*x3+x2;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;其中:
注意,轉換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*xO-h*x4;k8=h*xO-g*x4;j1=x0+x4;j2=x3-x1。
因此,轉換902可表示為: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。
因此,輸出係數X0、X1、X2、X3及X4可藉由使用如圖9之轉換902中所說明的4個蝴蝶運算908a、908b、908c及908d來計算。此實施例之複雜性為20個加法及16個乘法。此實施例中之最長路徑長度僅為3個運算。
圖10為說明5點DCT-IV轉換1002可如何實施之第二實例的流程圖。圖9之轉換902中的每一蝴蝶運算可經修改以使得其僅需要3個乘法來執行。舉例而言,輸出係數X0及X4之分量運算可寫為:f*x0+i*x4=(x0+x4)*f+x4*(i-f);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)。
類似地,輸出係數X1及X3之分量運算可寫為:g*x0-h*x4=(x3-x1)*f+x3*(i-f);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)。
藉由使用此等分解,轉換1002之輸出係數可以下列各項為特徵:X0=(x0+x4)*f+x4*(i-f)+(x1-x3)*g+x3*(h+g)+x2;X1=(x3-x1)*f+x3*(i-f)+(x0+x4)*g+x0*(h+g)-x2X2=-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。
注意,轉換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)。
因此,轉換902可表示為:X0=p2+p4+x2;X1=p5+p7-x2;X2=q1+q2-x2;X3=p6+p8+x2;X4=p1+p3+x2。此轉換1002之複雜性現為20個加法及12個乘法。最長路徑之長度此處為4個運算。
在替代方法中,DCT-IV轉換可藉由將其映射至DCT-II轉換而導出。
舉例而言,圖11為說明DCT-IV轉換1102可如何映射至DCT-II轉換1104以將輸入係數1106轉換為輸出係數1108之方塊圖。
圖12為說明5點DCT-IV轉換1202可使用5點DCT-II轉換實施以便將輸入係數1206轉換為輸出係數1208之方塊圖。此為圖11中所說明之轉換映射的特定狀況。在此實例中,角度之記法可表示為:
圖13為說明圖12之5點DCT-IV轉換的因子分解可使用5點DCT-II轉換來實施之一實例的方塊圖。在此實例中,圖12之5點DCT-IV轉換乘以2,且因數來回移動。此映射等效於圖12之映射。
圖14為說明圖13中映射之DCT-IV轉換1202可如何與圖6之DCT-II轉換602組合的方塊圖。亦即,DCT轉換1402可為圖13之轉換1202及圖6之DCT-II轉換602的組合。因此,轉換1402之輸出係數可以下列各項為特徵:X0=(f*x0+i*x4)+(h*x3+g*x1)+x2;X1=[2a*(f*x0-i*x4)+2b*(g*x1-h*x3)]-[2*X0];X2=[2c*(f*x0+i*x4+g*x14-h*x3)+(g*x1+h*x3)-2*x2]-[X1];X3=[2b*(f*x0-i*x4)-2a*(g*x1-h*x3)]-[X2];X4=[-2c*(f*x04-i*x4+g*x1+h*x3)-(f*x0+i*x4)+2*x2]-[X3];
注意,中間結果可計算為:w0=f*x0-i*x4;w1=g*x1-h*x3;z2=g*
x1+h*
x3;z4=f*xO+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。此DCT-IV轉換1402僅使用16個加法、9個乘法及2個移位。注意,此轉換中之因數2為二進有理數,且因此與2之此"乘法"僅為二元移位運算(亦即,移位)。
圖15為說明圖14之DCT-IV轉換1402可如何進一步修改為等效轉換1502的方塊圖。在此實例中,轉換1502中之最末級聯運算允許額外簡化。因此,轉換1502之輸出係數可以下列各項為特徵:X0=(f*x0+i*x4)+(h*x3+g*x1)+x2;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]。
注意,中間結果可計算為: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。
因此,此DCT-IV轉換1502僅使用15個加法、10個乘法及2個移位。注意,此轉換中之因數"2"為二進有理數,且因此與2之此"乘法"僅為二元移位運算(亦即,移位)。此實施例中之最長路徑長度僅為5個運算。
圖16為說明圖15之DCT-IV轉換1502可如何進一步修改為等效轉換1602的方塊圖。轉換1602之輸出係數可以下列各項為特徵:X0=(f*x0+i*x4)+(h*x3+g*x1)+x2;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]。
注意,中間結果可計算為: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。
因此,此DCT-IV轉換1602僅使用15個加法、11個乘法及2個移位。注意,此轉換中之因數2為二進有理數,且因此與2之此"乘法"僅為二元移位運算(亦即,移位)。此實施例中之最長路徑長度僅為5個運算。
圖17為說明圖16之DCT-IV轉換1602可如何進一步修改為等效轉換1702的方塊圖。轉換1702之輸出係數可以下列各項為特徵:X0=(f*x0+i*x4)+(h*x3+g*x1)+x2;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]。注意,中間結果可計算為:w0=f*x0-i*x4;w1=g*x1-h*x3;z2=g*x1+h*x3;z4=f*x0+i*x4;z1=2a*w0+2b*w1z3=(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。
因此,此DCT-IV轉換1702僅使用15個加法、11個乘法及2個移位。注意,此轉換中之因數"2"為二進有理數,且因此與2之此"乘法"僅為二元移位運算(亦即,移位)。此實施例中之最長路徑長度僅為5個運算。
圖18為說明圖17之DCT-IV轉換1702可如何進一步修改為等效轉換1802的方塊圖。在此實例中,歸因於遞歸加法在最後階段之移除而達成短得多的路徑長度及改良之數值穩定性。轉換1802之輸出係數可以下列各項為特徵:X0=(f*x0+i*x4)+(h*x3+g*x1)+x2;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)]。
注意,中間結果可計算為:w0=f*x0-
i*x4;w1=g*x1-h*x3;z2=g*x1+h*x3;z4=f*x0+i*x4;z1=2a*w0+2b*w1z3=(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。
此轉換1802僅使用15個加法、12個乘法及2個移位。注意,與"2"之乘法被視為移位。此實施例中之最長路徑長度僅為5個運算。
注意,圖5至圖18中所說明之DCT及DST轉換可經反轉為IDCT及IDST轉換以取消或反轉其中之DCT及DST轉換運算。
根據一實施例,N大小轉換(其中N=5*2K)可遞歸地分成較小N/2大小轉換之鏈,其可基於DCT-II、DCT-IV、DST-IV或類似核心,且其中最末5點級聯藉由使用用於計算5點轉換之所述快速演算法中之一者來實施。圖19為說明N大小轉換可如何經遞歸地分成較小N/2大小轉換直至其由複數個5點轉換表示之方塊圖。舉例而言,N大小(點)轉換1902接收N個輸入係數1910且將其轉換為N個輸出係數1912。N大小轉換1902可分樣為兩個N/2大小轉換1904a及1904b。類似地,每一N/2大小轉換1904a及1904b可進一步分樣為複數個較小轉換,直至最小轉換為5點轉換1906a、1906b、1908a及1908b。在各種實施例中,5點轉換1906a、1906b、1908a及1908b可由圖5至圖18中所說明之5點轉換中之任一者實施。
圖20為說明轉換分樣及***之一實例的方塊圖,其中10點DCT-IV轉換經遞歸地分成複數個較小5點DCT-II轉換2004a及2004b。在此實例中,十個輸入係數2006由一對較小5點轉換2004a及2004b轉換以產生十個輸出係數2008。
圖28說明轉換分樣及***之一替代實例,其中10點DCT-IV轉換經遞歸地分成複數個較小5點DCT-II轉換2804a及2804b。在此實例中,十個輸入係數2806由一對較小5點轉換2804a及2804b轉換以產生十個輸出係數2808。與圖20相比,DCT-IV之此替代分樣過程需要更多運算,但其在數值上更強健。亦即,在圖20方案中之轉換2004b之後執行減法序列可潛在地使中間變數之量值增加N/2,其中N為轉換之大小。圖28之替代方案不具有此等執行,且其僅使用平面旋轉(其為正規正交運算)來計算轉換。DCT-II之***程序亦具有此等性質。應注意,最後演算法亦可在***過程中遞歸地替換轉換類型。亦即,其可將DCT-II分成DCT-II及DCT-IV或一半大小;接著其將DCT-IV分成兩個DCT-II,同時DCT-II將被分成更小的DCT-II及DCT-IV,等等。
圖29說明為圖28中之轉換之反轉換的10點IDCT-IV轉換。
圖21為說明N大小反轉換可如何經遞歸地分成較小N/2大小反轉換直至其由複數個5點反轉換表示之方塊圖。舉例而言,N大小(點)反轉換2102接收N個輸入係數2110且將其轉換為N個輸出係數2112。N大小反轉換2102可分樣為兩個N/2大小反轉換2104a及2104b。類似地,每一N/2大小反轉換2104a及2104b可進一步分樣為複數個較小反轉換,直至最小反轉換為5點反轉換2106a、2106b、2108a及2108b。在各種實施例中,5點反轉換2106a、2106b、2108a及2108b可由對應於圖5至圖18中所說明之轉換的任何5點反轉換實施。
圖22為說明反轉換分樣及***之一實例的方塊圖,其中10點IDCT-IV反轉換2202經遞歸地分成複數個較小5點IDCT-II反轉換2204a及2204b。在此實例中,十個輸入係數2206由一對較小5點反轉換2204a及2204b轉換以產生十個輸出係數2208。
圖30為說明轉換分樣及***之一實例的方塊圖,其中10點DCT-IV反轉換經遞歸地分成複數個較小5點DCT-II轉換及5點DCT-IV。
圖31為說明圖30之正轉換之反轉換之一實例的方塊圖。
根據另一特徵,不對稱開窗階段可實施為MDCT濾波器組之一部分。在一些應用中,MDCT濾波器組可在具有多個層之可擴充話音編解碼器中實施,其中一些此等層可使用MDCT來轉換來自先前層之誤差信號。具有40毫秒開窗階段之加權誤差信號werr_sp(k)的MDCT由以下給出:
圖23說明一不對稱窗形,其可用於將與轉換階段相關聯的延遲減小至10 ms,同時保持相同數目之頻率係數。延遲減小歸因於此不對稱窗函數中之前80個因子變為0的事實而變得可能。因此不需要存取彼等樣本。
與傳統MDCT窗相對比,此窗2302不對稱;因而窗之第二半不同於第一半的時間反轉版本。不對稱窗形之分析由以下方程式給出:
其中:
且D
(n
)由以下界定
其中M
=320指示MDCT頻率分量之數目,且M z
=M
/4為尾隨零之數量。
MDCT係數werr
-sp
(k
)之計算藉由以下來進行:首先將窗及正規化因數應用於輸入信號werr
(n
)上,且接著藉由將其分解用於來藉由M x 2M
矩陣T
來計算乘積:
其中:藉由於下式中使用其分解
其中
其中為DCT-IV轉換之M×M矩陣,
且其中I N /2
及J N /2
相應地指示N/2
×N/2
單位及次序反轉矩陣。
大小M
=5
*2 k
(k
=1
,...,6
)之DCT-IV的計算藉由將其分成兩個較小大小之DCT-II轉換來進行:
其中:P M
為產生重新排序之置換矩陣
D M
為對角正負號改變矩陣
R M
為格文斯旋轉矩陣:
且指示剩餘DCT-II轉換之矩陣:
將大小M
=10
之DCT-IV轉換分成兩個較小(M
=5)之DCT-II轉換之此過程的實例實施例在圖20中說明。
大小M
=5
*2 k
(k=1,...,5)之DCT-II轉換的計算亦可藉由將其分成較小轉換來進行:
將大小M
=10
之DCT-II轉換分成較小轉換(M
=5
)之此過程的實例實施例在圖30中說明。
可遞歸地重複以上過程直至僅剩餘5點轉換。剩餘5點轉換可有效地藉由以下實施。
5點DCT-IV之計算經由DCT-II進行,如下:
最後,輸入向量x=[x0,x1,x2,x3,x4]T
之5點DCT-II的計算
如下進行:DCT-II轉換802可包括中間結果以使得:a0=x0+x4;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;其中:
在圖8中說明此轉換之流程圖的實例。
圖24為說明用於計算轉換值之器件的方塊圖。器件2402可包括輸入模組2406、窗模組2410及/或轉換模組2414。輸入模組2406可經調適以接收音訊信號2404且提供表示音訊信號之時域輸入值2408。窗模組2410可產生如圖23中所說明之不對稱開窗函數。
轉換模組2414可使用(例如)修改型離散餘弦轉換(MDCT)將經開窗輸入值2412轉換為頻譜係數2416。MDCT可遞歸地分成離散餘弦轉換類型IV(DCT-IV)、離散餘弦轉換類型II(DCT-II)或DCT-IV與DCT-II兩者中之至少一者,其中每一此轉換具有比MDCT小的維度。在一實例中,DCT-II可為實施不同大小之MDCT的5點轉換。MDCT可使用相同核心DCT-II來實施320、160、80、40點轉換中之至少兩者。器件2402之組件可實施為硬體、軟體及/或其組合。舉例而言,器件2402可為處理器及/或電路,其實施其組件或模組之功能。
圖25說明用於使用基於5點核心轉換之MDCT轉換來編碼信號之方法的實例。可接收表示音訊信號之時域輸入值(2502)。舉例而言,可對類比音訊信號(例如,語音信號、音樂、視訊等)進行取樣以獲得輸入值。在一實例中,可產生修改型開窗函數,其將不對稱窗函數應用於輸入值(2504)。接著可使用經遞歸地分成複數個5點轉換之修改型離散餘弦轉換(MDCT)將(經開窗)輸入值轉換為頻譜係數。舉例而言,可使用圖5至圖22中所說明之5點轉換中之任一者。
圖26為說明用於計算轉換值之器件的方塊圖。器件2602可包括輸入模組2606、反轉換模組2608及/或窗模組2612。反轉換模組2608可經調適以將頻譜係數2604轉換為輸出值2610。舉例而言,反轉換模組可使用反修改型離散餘弦轉換(IMDCT)將頻譜係數轉換為時域輸出值2610,該IMDCT經遞歸地分成反離散餘弦轉換類型IV(IDCT-IV)、反離散餘弦轉換類型II(IDCT-II)或IDCT-IV與IDCT-II兩者中之至少一者,其中每一此反轉換具有比IMDCT小的維度。
窗模組2612可產生一修改型開窗函數,其對輸出值2610實施不對稱窗函數以產生經開窗輸出值2614。器件2602之組件可實施為硬體、軟體及/或其組合。舉例而言,器件2602可為處理器及/或電路,其實施其組件或模組之功能。
圖27說明用於使用基於核心IDCT-II轉換之IMDCT轉換來解碼信號之方法的實例。接收或獲得表示音訊信號之頻譜係數(2702)。可使用經遞歸地分成複數個5點反轉換之反修改型離散餘弦轉換(IMDCT)將頻譜係數轉換為時域輸出值(2704)。複數個5點反轉換中之每一者可使用相同核心轉換來實施。IMDCT使用相同核心轉換來實施320、160、80、40點反轉換中之至少兩者。在各種實施例中,核心轉換可為圖5至圖22中之5點轉換中之任一者。另外,可產生修改型開窗函數,其將不對稱開窗函數應用於經轉換之頻譜係數2706。
除本文中所提供之實例以外,實施分樣轉換之本文中所述之演算法可用於實施為二之倍數的任何其他轉換。另外,應注意,本文中所述之技術可應用於各種類型之信號,包括音訊、語音、視訊、資料等。
應理解,本文中所說明之轉換的中間結果可在選擇轉換之流程圖中的不同點時改變。因此,可預期較多或較少中間結果及/或不同中間結果(例如,在流程圖中之不同點),且其在本文中所描述且主張之轉換流程圖的範疇內。
可使用多種不同技術中之任一者來表示資訊與信號。舉例而言,可由電壓、電流、電磁波、磁場或粒子、光場或粒子或其任何組合來表示貫穿上文描述而參考之資料、指令、命令、資訊、信號及其類似物。
本文中所述之各種說明性邏輯區塊、模組及電路及演算法步驟可實施或執行為電子硬體、軟體或兩者之組合。為了清楚說明硬體與軟體之此可互換性,各種說明性組件、區塊、模組、電路及步驟已大體根據其功能性而在上文加以描述。此功能性係實施為硬體還是軟體視特定應用及外加於整個系統之設計約束而定。應注意,可將組態描述為一過程,該過程被描繪為流程框圖、流程圖、結構圖或方塊圖。雖然流程框圖可將操作描述為順序過程,但操作中之許多者可並行或同時執行。另外,可重排該等操作之次序。當一過程之操作完成時,終止該過程。過程可對應於方法、函數、程序、子常式、子程式等。當過程對應於函數時,其終止對應於函數至呼叫函數或主函數之返回。
當在硬體中實施時,各種實例可使用通用處理器、數位信號處理器(DSP)、特殊應用積體電路(ASIC)、場可程式化閘陣列(FPGA)或經設計以執行本文中所描述之功能的其他可程式化邏輯器件、離散閘或電晶體邏輯、離散硬體組件,或其任何組合。通用處理器可為微處理器,但替代地,該處理器可為任何習知處理器、控制器、微控制器或狀態機。亦可將處理器實施為計算器件之組合,例如,DSP與微處理器之組合、複數個微處理器、結合一DSP核心之一或多個微處理器或任何其他此組態。
當在軟體中實施時,各種實例可使用韌體、中間軟體或微碼。執行必要任務之程式碼或碼段可儲存於諸如儲存媒體或其他儲存器之電腦可讀媒體中。處理器可執行必要任務。碼段可表示程序、函數、子程式、程式、常式、子常式、模組、套裝軟體、類別,或指令、資料結構或程式語句的任何組合。可藉由傳遞及/或接收資訊、資料、引數、參數或記憶體內容而將一碼段耦接至另一碼段或硬體電路。資訊、引數、參數、資料等可經由包括記憶體共用、訊息傳遞、符記傳遞、網路傳輸等之任何適當手段來傳遞、轉發或傳輸。
如本申請案中所使用,術語"組件"、"模組"、"系統"及其類似者意欲指代電腦相關實體:硬體、韌體、硬體與軟體之組合、軟體或執行中之軟體。舉例而言,組件可為(但不限於)在處理器上執行之處理程序、處理器、物件、可執行體、執行線緒、程式及/或電腦。作為說明,在計算器件上執行之應用程式及計算器件兩者可為一組件。一或多個組件可常駐於處理程序及/或執行線緒內,且組件可位於一電腦上及/或分布於兩個或兩個以上電腦之間。另外,此等組件可由上面儲存有各種資料結構之各種電腦可讀媒體來執行。該等組件可藉由本端處理程序及/或遠端處理程序進行通信,諸如根據具有一或多個資料封包的信號(例如,來自藉由信號而與另一組件互動的組件之資料,另一組件係在本端系統中、在分散式系統中及/或跨具有其他系統的網路(諸如網際網路)中)。
在本文中之一或多個實例中,所描述之功能可在硬體、軟體、韌體或其任何組合中實施。若在軟體中實施,則該等功能可作為一或多個指令或程式碼而儲存於電腦可讀媒體上或經由電腦可讀媒體傳輸。電腦可讀媒體包括電腦儲存媒體與通信媒體(包括促進將電腦程式自一處轉移至另一處的任何媒體)。儲存媒體可為可由電腦存取的任何可用媒體。以實例說明而非限制,此等電腦可讀媒體可包含RAM、ROM、EEPROM、CD-ROM或其他光碟儲存器、磁碟儲存器或其他磁性儲存器件,或可用於載運或儲存呈指令或資料結構之形式的所要程式碼且可由電腦存取的任何其他媒體。又,可適當地將任何連接稱為電腦可讀媒體。舉例而言,若使用同軸電纜、光纖電纜、雙絞線、數位用戶線(DSL)或諸如紅外、無線電及微波之無線技術而自網站、伺服器或其他遠端源傳輸軟體,則同軸電纜、光纖電纜、雙絞線、DSL或諸如紅外、無線電及微波之無線技術包括在媒體之定義中。如本文中所使用之磁碟及光碟包括緊密光碟(CD)、雷射光碟、光學碟片、數位化通用光碟(DVD)、軟性磁碟及藍光光碟,其中磁碟通常以磁性方式再現資料,而光碟則用雷射以光學方式再現資料。上述各物之組合亦應包括在電腦可讀媒體之範疇內。軟體可包含單一指令或許多指令,且可在若干不同碼段上、在不同程式中及跨越多個儲存媒體而分布。可將一例示性儲存媒體耦接至一處理器,使得該處理器可自該儲存媒體讀取資訊及將資訊寫入至該儲存媒體。替代地,儲存媒體可整合至處理器。
本文中所揭示之方法包含用於達成所描述方法之一或多個步驟或動作。方法步驟及/或動作可在不背離申請專利範圍之範疇的情況下彼此互換。換言之,除非所描述之實施例之恰當操作需要特定次序之步驟或動作,否則可修改特定步驟及/或動作之次序及/或使用而不背離申請專利範圍之範疇。
圖中所說明之組件、步驟及/或功能中之一或多者可重排及/或組合成單一組件、步驟或功能或在若干組件、步驟或功能中體現。亦可添加額外元件、組件、步驟及/或功能。一些圖中所說明之裝置、器件及/或組件可經組態或調適以執行其他圖中所描述之方法、特徵或步驟中之一或多者。例如,本文中所描述之演算法可有效地實施於軟體及/或嵌入式硬體中。
應注意,前述組態僅為實例且不應解釋為限制申請專利範圍。該等組態之描述意欲為說明性的且不限制申請專利範圍之範疇。因此,本教示可易於應用於其他類型之裝置,且許多替代、修改及變化對於熟習此項技術者而言將為顯而易見的。
102...編碼器
104...輸入音訊信號
106...MDCT分析濾波器組
108...量化器
110...熵編碼器
112...數位化音訊信號之位元流
114...開窗函數
116...轉換
118...定標函數
202...輸入
204...輸出
206a...k點DCT-IV轉換
206b...k點DCT-IV轉換
208a...n點DCT-II轉換
208b...n點DCT-II轉換
210a...n點DCT-II轉換
210b...n點DCT-II轉換
302...解碼器
304...位元流
306...熵解碼器
308...解量化器
310...IMDCT合成濾波器組
312...時域音訊信號
314...定標函數
316...反轉換
318...開窗函數
402...輸入
404...輸出
406a...k點IDCT-IV反轉換
406b...k點IDCT-IV反轉換
408a...n點IDCT-II轉換
408b...n點IDCT-II轉換
410a...n點IDCT-II轉換
410b...n點IDCT-II轉換
504...輸入係數
506...輸出係數
502...5點DCT-II轉換
508...第一蝴蝶運算
510...第二蝴蝶運算
602...5點DCT-II轉換
702...5點DCT II轉換
802...5點DCT-II轉換
904...輸入係數
906...輸出係數
902...5點DCT-IV轉換
908a...蝴蝶運算
908b...蝴蝶運算
908c...蝴蝶運算
908d...蝴蝶運算
1904a...N/2大小轉換
1904b...N/2大小轉換
1002...5點DCT-IV轉換
2104a...N/2大小反轉換
2104b...N/2大小反轉換
1102...DCT-IV轉換
1104...DCT-II轉換
1106...輸入係數
1108...輸出係數
1206...輸入係數
1202...5點DCT-IV轉換
1208...輸出係數
1402...5點DCT-IV轉換
1502...DCT-IV轉換
1602...DCT-IV轉換
1702...DCT-IV轉換
1802...轉換
1902...N大小(點)轉換
1910...輸入係數
1906a...5點轉換
1906b...5點轉換
1912...輸出係數
1908a...5點轉換
1908b...5點轉換
2006...輸入係數
2008...輸出係數
2004a...5點DCT-II轉換
2004b...5點DCT-II轉換
2102...N大小(點)反轉換
2110...輸入係數
2106a...5點反轉換
2106b...5點反轉換
2112...輸出係數
2108a...5點反轉換
2108b...5點反轉換
2206...輸入係數
2208...輸出係數
2204a...5點IDCT-II反轉換
2204b...5點IDCT-II反轉換
2202...10點IDCT-IV反轉換
2302...窗
2402...器件
2404...音訊信號
2406...輸入模組
2408...時域輸入值
2410...窗模組
2412...經開窗輸入值
2414...轉換模組
2416...頻譜係數
2602...器件
2604...頻譜係數
2606...輸入模組
2608...反轉換模組
2610...輸出值
2612...窗模組
2614...經開窗輸出值
2806...輸入係數
2808...輸出係數
2804a...5點DCT-II轉換
2804b...5點DCT-II轉換
3202...IDCT-II轉換
3204...輸入/頻譜係數
3206...輸出/時域值
圖1為說明可包括MDCT分析濾波器組之編碼器之一實例的方塊圖。
圖2為說明轉換可如何由較小轉換實施之一實例的方塊圖。
圖3為說明可包括IMDCT合成濾波器組之解碼器之一實例的方塊圖。
圖4為說明反轉換可如何由較小反轉換實施之一實例的方塊圖。
圖5為說明5點DCT-II轉換之因子分解之第一實例的流程圖。
圖6為說明5點DCT-II轉換之因子分解之第二實例的流程圖。
圖7為說明5點DCT-II轉換之因子分解之第三實例的流程圖。
圖8為說明5點DCT-II轉換之因子分解之替代實例的流程圖。
圖9為說明5點DCT-IV轉換之因子分解之第一實例的流程圖。
圖10為說明5點DCT-IV轉換可如何實施之第二實例的流程圖。
圖11為說明DCT-IV轉換可如何映射至DCT-II轉換以將輸入係數轉換為輸出係數之方塊圖。
圖12為說明5點DCT-IV轉換可使用5點DCT-II轉換實施以便將輸入係數轉換為輸出係數之方塊圖。
圖13為說明圖12之5點DCT-IV轉換的因子分解可使用5點DCT-II轉換來實施之一實例的方塊圖。
圖14為說明圖13中映射之DCT-IV轉換可如何與圖6之DCT-II轉換組合的方塊圖。
圖15為說明圖14之DCT-IV轉換可如何進一步修改為等效轉換的方塊圖。
圖16為說明圖15之DCT-IV轉換可如何進一步修改為等效轉換的方塊圖。
圖17為說明圖16之DCT-IV轉換可如何進一步修改為等效轉換的方塊圖。
圖18為說明圖17之DCT-IV轉換可如何進一步修改為等效轉換的方塊圖。
圖19為說明N大小轉換可如何經遞歸地分成較小N/2大小轉換,直至其由複數個5點轉換表示之方塊圖。
圖20為說明轉換分樣及***之一實例的方塊圖,其中10點DCT-IV轉換經遞歸地分成複數個較小5點DCT-II轉換。
圖21為說明N大小反轉換可如何經遞歸地分成較小N/2大小反轉換,直至其由複數個5點反轉換表示之方塊圖。
圖22為說明反轉換分樣及***之一實例的方塊圖,其中10點IDCT-IV反轉換經遞歸地分成複數個較小5點IDCT-II反轉換。
圖23說明一不對稱窗形,其可用於將與轉換階段相關聯的延遲減小至10ms,同時保持相同數目之頻率係數。
圖24為說明用於計算轉換值之器件的方塊圖。
圖25說明用於使用基於5點核心轉換之MDCT轉換來編碼信號之方法的實例。
圖26為說明用於計算轉換值之器件的方塊圖。
圖27說明用於使用基於核心IDCT-II轉換之IMDCT轉換來解碼信號之方法的實例。
圖28說明轉換分樣及***之一替代實例,其中10點DCT-IV轉換經遞歸地分成複數個較小5點DCT-II轉換。
圖29說明為圖28中之轉換之反轉換的10點IDCT-IV轉換。
圖30為說明轉換分樣及***之一實例的方塊圖,其中10點DCT-IV反轉換經遞歸地分成複數個較小5點DCT-II轉換及5點DCT-IV。
圖31為說明圖30之正轉換之反轉換之一實例的方塊圖。
圖32說明對應於圖8之正轉換的反轉換。
116...轉換
202...輸入
204...輸出
206a...k點DCT-IV轉換
206b...k點DCT-IV轉換
208a...n點DCT-II轉換
208b...n點DCT-II轉換
210a...n點DCT-II轉換
210b...n點DCT-II轉換
Claims (52)
- 一種用於計算轉換值之方法,其包含:接收表示一音訊信號之時域輸入值;及使用一經遞歸地分樣至複數個5點轉換之修改型離散餘弦轉換(MDCT)將該等輸入值轉換為頻譜係數。
- 如請求項1之方法,其中該複數個5點轉換中之至少一者包括因子分解為12個加法運算、8個乘法運算及具有3個運算之一最長路徑長度之至少一離散餘弦轉換類型II(DCT-II)(502)。
- 如請求項1之方法,其中該複數個5點轉換中之至少一者包括至少一離散餘弦轉換類型II(DCT-II)(502),其採用一輸入向量[x0,x1,x2,x3,x4]來產生一輸出向量[X0,X1,X2,X3,X4],且以至少複數個中間結果為特徵: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點轉換中之至少一者包括因子分解為12個加法運算、5個乘法運算、2個移位運算及具有4個運算之一最長路徑長度之至少一離散餘弦轉換類型II(DCT-II)(602)。
- 如請求項1之方法,其中該複數個5點轉換中之至少一者包括至少一離散餘弦轉換類型II(DCT-II)(602),其採用一輸入向量[x0,x1,x2,x3,x4]來產生一輸出向量[X0,X1,X2,X3,X4],且以至少複數個中間結果為特徵:w0=x0-x4;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; 其中:且。
- 如請求項1之方法,其中該複數個5點轉換中之至少一者包括因子分解為12個加法運算、5個乘法運算、1個移位運算及具有4個運算之一最長路徑長度之至少一離散餘弦轉換類型II(DCT-II)(702)。
- 如請求項1之方法,其中該複數個5點轉換中之至少一者包括至少一離散餘弦轉換類型II(DCT-II)(702),其採用一輸入向量[x0,x1,x2,x3,x4]來產生一輸出向量[X0,X1,X2,X3,X4],且以具有下列中間結果為特徵: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點轉換中之至少一者 包括因子分解為12個加法運算、4個乘法運算、2個移位運算及具有4個運算之一最長路徑長度之至少一離散餘弦轉換類型II(DCT-II)(802)。
- 如請求項1之方法,該複數個5點轉換中之至少一者包括至少一離散餘弦轉換類型II(DCT-II)(802),其採用一輸入向量[x0,x1,x2,x3,x4]來產生一輸出向量[X0,X1,X2,X3,X4],且以至少複數個中間結果為特徵: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點轉換中之至少一者包括因子分解為12個加法運算、5個乘法運算、1個移位運算及具有4個運算之一最長路徑長度之至少一轉換(802)。
- 如請求項1之方法,其中該複數個5點轉換中之至少一者包括因子分解為20個加法運算、16個乘法運算及具有3個運算之一最長路徑長度之一離散餘弦轉換類型IV(DCT-IV)(902)。
- 如請求項1之方法,其中該複數個5點轉換中之至少一者包括至少一離散餘弦轉換類型IV(DCT-IV)(902),其採用一輸入向量[x0,x1,x2,x3,x4]來產生一輸出向量[X0,X1,X2,X3,X4],且以至少複數個中間結果為特徵: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點轉換中之至少一者包括因子分解為20個加法運算、12個乘法運算及具有4個運算之一最長路徑長度之一離散餘弦轉換類型IV(DCT-IV)(1002)。
- 如請求項1之方法,其中該複數個5點轉換中之至少一者包括至少一離散餘弦轉換類型IV(DCT-IV)(1002),其採用一輸入向量[x0,x1,x2,x3,x4]來產生一輸出向量[X0,X1,X2,X3,X4],且以至少複數個中間結果為特徵: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點轉換中之至少一者包括因子分解為16個加法運算、9個乘法運算及具有5個運算之一最長路徑長度之一離散餘弦轉換類型IV(DCT-IV)(1402)。
- 如請求項1之方法,其中該複數個5點轉換中之至少一者包括至少一離散餘弦轉換類型IV(DCT-IV)(1402),其採用一輸入向量[x0,x1,x2,x3,x4]來產生一輸出向量[X0,X1,X2,X3,X4],且以至少複數個中間結果為特徵: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點轉換中之至少一者包括因子分解為15個加法運算、10個乘法運算、2個移位運算及具有5個運算之一最長路徑長度之一離散餘弦轉換類型IV(DCT-IV)(1502)。
- 如請求項1之方法,其中該複數個5點轉換中之至少一者包括至少一離散餘弦轉換類型IV(DCT-IV)(1502),其採用一輸入向量[x0,x1,x2,x3,x4]來產生一輸出向量[X0,X1,X2,X3,X4],且以至少複數個中間結果為特徵: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點轉換中之至少一者包括因子分解為15個加法運算、11個乘法運算、2個移位運算及具有5個運算之一最長路徑長度之一離散餘弦轉換類型IV(DCT-IV)(1602/1702)。
- 如請求項1之方法,其中該複數個5點轉換中之至少一者包括至少一離散餘弦轉換類型IV(DCT-IV)(1602),其採用一輸入向量[x0,x1,x2,x3,x4]來產生一輸出向量[X0,X1,X2,X3,X4],且以至少複數個中間結果為特徵: 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點轉換中之至少一者包括至少一離散餘弦轉換類型IV(DCT-IV)(1702),其採用一輸入向量[x0,x1,x2,x3,x4]來產生一輸出向量[X0,X1,X2,X3,X4],且以至少複數個中間結果為特徵: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點轉換中之至少一者包括因子分解為15個加法運算、12個乘法運算、2個移位運算及具有5個運算之一最長路徑長度之一離散餘弦轉換類型IV(DCT-IV)(1802)。
- 如請求項1之方法,其中該複數個5點轉換中之至少一者包括至少一離散餘弦轉換類型IV(DCT-IV)(1802),其採用一輸入向量[x0,x1,x2,x3,x4]來產生一輸出向量[X0, X1,X2,X3,X4],且以下列中間結果為特徵: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之方法,其中該MDCT使用一5點離散餘弦轉換類型IV來實施一640、320、160、80、40點轉換中之至少一者。
- 如請求項1之方法,其中該MDCT使用一5點離散餘弦轉換類型II及一5點離散餘弦轉換類型IV來實施一640、320、160、80、40點轉換中之至少一者。
- 如請求項1之方法,其中該MDCT使用一5點離散正弦轉換類型IV來實施一640、320、160、80、40點轉換中之至少一者。
- 一種可擴充話音及音訊編碼器器件,其包含:一離散餘弦轉換(DCT)型轉換層模組,其經調適以獲得表示一音訊信號之時域輸入值;及使用一經遞歸地分樣至複數個5點轉換之修改型離散餘弦轉換(MDCT)將該等輸入值轉換為頻譜係數。
- 如請求項29之器件,其中該複數個5點轉換中之至少一者包括因子分解為12個加法運算、4個乘法運算、2個移位運算及具有4個運算之一最長路徑長度之至少一離散餘弦轉換類型II(DCT-II)(802)。
- 如請求項29之器件,其中該複數個5點轉換中之至少一者包括至少一離散餘弦轉換類型II(DCT-II)(802),其採用一輸入向量[x0,x1,x2,x3,x4]來產生一輸出向量[X0,X1,X2,X3,X4],且以至少複數個中間結果為特徵: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點轉換中之至少一者包括因子分解為12個加法運算、5個乘法運算、1個移位運算及具有4個運算之一最長路徑長度之至少一轉換(802)。
- 一種可擴充話音及音訊編碼器器件,其包含:用於獲得表示一音訊信號之時域輸入值之構件;及 用於使用一經遞歸地分樣至複數個5點轉換之修改型離散餘弦轉換(MDCT)將該等輸入值轉換為頻譜係數之構件。
- 如請求項33之器件,其中該複數個5點轉換中之至少一者包括至少一離散餘弦轉換類型II(DCT-II)(802),其採用一輸入向量[x0,x1,x2,x3,x4]來產生一輸出向量[X0,X1,X2,X3,X4],且以至少複數個中間結果為特徵: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點轉換之修改型離散餘弦轉換(MDCT)將該等輸入值轉換為頻譜係數,其中該複數個5點轉換中之至少一者包括至少一離散餘弦轉換類型II(DCT-II)(802),其採用一輸入向量[x0,x1,x2,x3,x4]來產生一輸出向量[X0,X1,X2,X3,X4],且以至少複數個中間結果為特徵: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點轉換之修改型離散餘弦轉換(MDCT)將該等輸入值轉換為頻譜係數,其中該複數個5點轉換中之至少一者包括至少一離散餘弦轉換類型II(DCT-II)(802),其採用一輸入向量[x0,x1,x2,x3,x4]來產生一輸出向量[X0,X1,X2,X3,X4],且以至少複數個中間結果為特徵: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)將該等頻譜係數輸入值轉換為時域輸出值。
- 如請求項37之方法,其中該複數個5點反轉換中之至少一者包括因子分解為12個加法運算、4個乘法運算、2個移位運算及具有4個運算之一最長路徑長度之至少一反離散餘弦轉換類型II(IDCT-II)(3202)。
- 如請求項37之方法,其中該複數個5點反轉換中之至少一者包括至少一反離散餘弦轉換類型II(IDCT-II)(3202),其採用一輸入向量[X0,X1,X2,X3,X4]來產生一輸出向量[x0,x1,x2,x3,x4],且以至少複數個中間 結果為特徵: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點轉換中之至少一者。
- 如請求項37之方法,其中該IMDCT使用一5點反離散餘弦轉換類型IV來實施一640、320、160、80、40點轉換中之至少一者。
- 如請求項37之方法,其中該IMDCT使用一5點反離散餘弦轉換類型II及一5點反離散餘弦轉換類型IV來實施一640、320、160、80、40點轉換中之至少一者。
- 如請求項37之方法,其中該IMDCT使用一5點反離散正弦轉換類型IV來實施一640、320、160、80、40點轉換中之至少一者。
- 一種可擴充話音及音訊解碼器器件,其包含:一反離散餘弦轉換(DCT)型轉換層模組,其經調適以接收表示一音訊信號之頻譜係數輸入值;及使用一經遞歸地分樣至複數個5點反轉換之反修改型離散餘弦轉換(IMDCT)將該等頻譜係數輸入值轉換為時域輸出值。
- 如請求項45之器件,其中該複數個5點反轉換中之至少一者包括因子分解為12個加法運算、4個乘法運算、2個移位運算及具有4個運算之一最長路徑長度之至少一反離散餘弦轉換類型II(IDCT-II)(3202)。
- 如請求項45之器件,其中該複數個5點反轉換中之至少一者包括至少一反離散餘弦轉換類型II(IDCT-II)(3202),其採用一輸入向量[X0,X1,X2,X3,X4]來產生一輸出向量[x0,x1,x2,x3,x4],且以至少複數個中間結果為特徵: 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;其中:。
- 一種可擴充話音及音訊解碼器器件,其包含:用於接收表示一音訊信號之頻譜係數輸入值之構件;及用於使用一經遞歸地分樣至複數個5點反轉換之反修改型離散餘弦轉換(IMDCT)將該等頻譜係數輸入值轉換為時域輸出值之構件。
- 如請求項48之器件,其中該複數個5點反轉換中之至少一者包括因子分解為12個加法運算、4個乘法運算、2個 移位運算及具有4個運算之一最長路徑長度之至少一反離散餘弦轉換類型II(IDCT-II)(3202)。
- 如請求項48之器件,其中該複數個5點反轉換中之至少一者包括至少一反離散餘弦轉換類型II(IDCT-II)(3202),其採用一輸入向量[X0,X1,X2,X3,X4]來產生一輸出向量[x0,x1,x2,x3,x4],且以至少複數個中間結果為特徵:u1=X4-X2;u5=X4+X2;w0=X0+u1;w5=X0-αu1;w2=βX3-γX1;w3=γX3-βXI;w6=δu5;w1=w5-w6;w4=w5+w6;以使得,x0=w1-w2;x1=w4+w3;x2=w0;x3=w4-w3;x4=w1+w2;其中:。
- 一種包括一可擴充話音及音訊解碼電路之處理器,其經調適以:接收表示一音訊信號之頻譜係數輸入值;及使用一經遞歸地分樣至複數個5點反轉換之反修改型離散餘弦轉換(IMDCT)將該等頻譜係數輸入值轉換為時域輸出值,其中該複數個5點反轉換中之至少一者包括至少一反離散餘弦轉換類型II(IDCT-II)(3202),其採用一輸入向量[X0,X1,X2,X3,X4]來產生一輸出向量[x0,x1,x2,x3,x4],且以至少複數個中間結果為特徵: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;其中:。
- 一種包含操作以用於可擴充話音及音訊解碼之指令的機器可讀媒體,當由一或多個處理器執行時,該等指令使該一或多個處理器:接收表示一音訊信號之頻譜係數輸入值;及使用一經遞歸地分樣至複數個5點反轉換之反修改型離散餘弦轉換(IMDCT)將該等頻譜係數輸入值轉換為時域輸出值,其中該複數個5點反轉換中之至少一者包括至少一反離散餘弦轉換類型II(IDCT-II)(3202),其採用一輸入向量[X0,X1,X2,X3,X4]來產生一輸出向量[x0,x1,x2,x3,x4],且以至少複數個中間結果為特徵: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 (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US1357907P | 2007-12-13 | 2007-12-13 | |
US1610607P | 2007-12-21 | 2007-12-21 | |
US3919408P | 2008-03-25 | 2008-03-25 | |
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 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW200947419A TW200947419A (en) | 2009-11-16 |
TWI405185B true TWI405185B (zh) | 2013-08-11 |
Family
ID=40754681
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW097148864A TWI405185B (zh) | 2007-12-13 | 2008-12-15 | 用於5點離散餘弦轉換-ii(dct-ii),離散餘弦轉換-iv(dct-iv)及離散正弦轉換-iv(dst-iv)之計算的快速演算法與結構 |
Country Status (12)
Country | Link |
---|---|
US (1) | US8631060B2 (zh) |
EP (1) | EP2225755A1 (zh) |
JP (1) | JP5269908B2 (zh) |
KR (1) | KR101226094B1 (zh) |
CN (1) | CN101896966B (zh) |
AU (1) | AU2008334935A1 (zh) |
BR (1) | BRPI0820703A2 (zh) |
CA (1) | CA2706283A1 (zh) |
IL (1) | IL205835A0 (zh) |
MX (1) | MX2010006471A (zh) |
TW (1) | TWI405185B (zh) |
WO (1) | WO2009076666A1 (zh) |
Families Citing this family (22)
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 |
US9075757B2 (en) * | 2009-06-24 | 2015-07-07 | 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 |
US9081733B2 (en) * | 2009-06-24 | 2015-07-14 | Qualcomm Incorporated | 16-point transform for media data coding |
US8451904B2 (en) | 2009-06-24 | 2013-05-28 | Qualcomm Incorporated | 8-point transform for media data coding |
CN102667923B (zh) | 2009-10-20 | 2014-11-05 | 弗兰霍菲尔运输应用研究公司 | 音频编码器、音频解码器、用于将音频信息编码的方法、用于将音频信息解码的方法 |
CN102104776A (zh) * | 2009-12-21 | 2011-06-22 | 康佳集团股份有限公司 | 一种网络电视平台mpeg音频多相合成滤波方法 |
CA2786944C (en) | 2010-01-12 | 2016-03-15 | Fraunhofer Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Audio encoder, audio decoder, method for encoding and audio information, method for decoding an audio information and computer program using a hash table describing both significant state values and interval boundaries |
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 |
US10536720B2 (en) * | 2018-05-07 | 2020-01-14 | Tencent America LLC | Method, apparatus and medium for decoding or encoding |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW321810B (zh) * | 1995-10-26 | 1997-12-01 | Sony Co Ltd | |
EP1175030A2 (en) * | 2000-07-07 | 2002-01-23 | Nokia Mobile Phones Ltd. | Method and system for multichannel perceptual audio coding using the cascaded discrete cosine transform or modified discrete cosine transform |
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 |
TW507194B (en) * | 2000-05-24 | 2002-10-21 | Nat Science Council | Variable-rate residual-transform vocoders using auditory perception approximation |
TW533405B (en) * | 2000-11-22 | 2003-05-21 | Vialta Inc | Perceptual audio signal compression system and method |
TW546630B (en) * | 1999-11-24 | 2003-08-11 | Matsushita Electric Ind Co Ltd | Optimized local feature extraction for automatic speech recognition |
CN1886737A (zh) * | 2003-09-29 | 2006-12-27 | 新加坡科技研究局 | 将数字信号从时间域变换到频率域及其反向变换的方法 |
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 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
BR9405445A (pt) | 1993-06-30 | 1999-09-08 | Sony Corp | Aparelho codificador e decodificador de sinal apropriado para codificar um sinal de entrada e decodificar um sinal codificado, suporte de gravação onde sinais codificados são gravados, e processo de codificação e de decodificação de sinal para codificar um sinal de entrada e decodificar um sinal codificado. |
US6496795B1 (en) * | 1999-05-05 | 2002-12-17 | Microsoft Corporation | Modulated complex lapped transform for integrated signal enhancement and coding |
RU2216791C1 (ru) | 2002-04-29 | 2003-11-20 | Военный университет связи | Способ сжатия и восстановления речевых сообщений |
KR100462611B1 (ko) | 2002-06-27 | 2004-12-20 | 삼성전자주식회사 | 하모닉 성분을 이용한 오디오 코딩방법 및 장치 |
CN1914669A (zh) | 2004-01-28 | 2007-02-14 | 皇家飞利浦电子股份有限公司 | 使用复数值数据的音频信号解码 |
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 JP JP2010538219A patent/JP5269908B2/ja active Active
- 2008-12-13 CN CN2008801202817A patent/CN101896966B/zh active Active
- 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 KR KR1020107015493A patent/KR101226094B1/ko active IP Right Grant
- 2008-12-13 EP EP08859899A patent/EP2225755A1/en not_active Ceased
- 2008-12-13 CA CA2706283A patent/CA2706283A1/en not_active Abandoned
- 2008-12-13 WO PCT/US2008/086739 patent/WO2009076666A1/en active Application Filing
- 2008-12-15 TW TW097148864A patent/TWI405185B/zh active
-
2010
- 2010-05-17 IL IL205835A patent/IL205835A0/en unknown
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW321810B (zh) * | 1995-10-26 | 1997-12-01 | Sony Co Ltd | |
TW546630B (en) * | 1999-11-24 | 2003-08-11 | Matsushita Electric Ind 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 |
EP1175030A2 (en) * | 2000-07-07 | 2002-01-23 | Nokia Mobile Phones Ltd. | Method and system for multichannel perceptual audio coding using the cascaded discrete cosine transform or modified discrete cosine transform |
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 |
TW533405B (en) * | 2000-11-22 | 2003-05-21 | Vialta Inc | Perceptual audio signal compression system and method |
CN1886737A (zh) * | 2003-09-29 | 2006-12-27 | 新加坡科技研究局 | 将数字信号从时间域变换到频率域及其反向变换的方法 |
Also Published As
Publication number | Publication date |
---|---|
JP2011507037A (ja) | 2011-03-03 |
CN101896966A (zh) | 2010-11-24 |
BRPI0820703A2 (pt) | 2015-06-16 |
US8631060B2 (en) | 2014-01-14 |
CA2706283A1 (en) | 2009-06-18 |
TW200947419A (en) | 2009-11-16 |
KR20100103580A (ko) | 2010-09-27 |
AU2008334935A1 (en) | 2009-06-18 |
CN101896966B (zh) | 2012-11-21 |
IL205835A0 (en) | 2010-11-30 |
US20090157785A1 (en) | 2009-06-18 |
EP2225755A1 (en) | 2010-09-08 |
JP5269908B2 (ja) | 2013-08-21 |
KR101226094B1 (ko) | 2013-01-24 |
WO2009076666A1 (en) | 2009-06-18 |
MX2010006471A (es) | 2010-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI405185B (zh) | 用於5點離散餘弦轉換-ii(dct-ii),離散餘弦轉換-iv(dct-iv)及離散正弦轉換-iv(dst-iv)之計算的快速演算法與結構 | |
KR101329514B1 (ko) | 효율적인 방식으로 변환 값들을 계산하기 위한 방법 및 장치 | |
KR101286329B1 (ko) | 저 복잡도의 스펙트럼 대역 복제 (sbr) 필터뱅크 | |
KR100778349B1 (ko) | 이산값의 시퀀스를 갖는 신호 처리 장치 및 방법 | |
KR100776235B1 (ko) | 변환 표시로의 변환 또는 변환 표시의 역변환을 위한 장치및 방법 | |
JP3814611B2 (ja) | 時間離散オーディオサンプル値を処理する方法と装置 | |
BRPI0415152B1 (pt) | dispositivo e método para o processamento de pelo menos dois valores de entrada | |
TWI420511B (zh) | 提供一分析濾過器群及一合成濾過器群之方法、設備及電路以及機器可讀媒體 | |
RU2464540C2 (ru) | Быстрые алгоритмы для вычисления 5-точечного dct-ii, dct-iv и dst-iv, и архитектуры |