一种网络电视平台mpeg音频多相合成滤波方法

文档序号:2835771阅读:264来源:国知局
专利名称:一种网络电视平台mpeg音频多相合成滤波方法
技术领域
本发明涉及嵌入式平台网络电视及机顶盒领域,更具体地说,涉及一种网络电视 平台MPEG音频多相合成滤波方法。
背景技术
在诸如网络电视、MP3播放器或机顶盒等多媒体IT产品中,音视频编解码技术是 这些产品的的灵魂,好的音视频编解码技术可以以最小的代价给消费者带来更完美的视听 体验。其中,在音频领域MPEG (Moving Pictures ExpertsGroup,动态图像专家组)技术是 目前广泛应用的一项编解码技术。MPEG音频解码的最后一步为多相合成滤波,其目的是将 频域信号转化为时域信号输出。这一步需要进行大量浮点乘法运算,包括将MPEG音频的输 入序列的N个浮点数进行离散余弦变换以获得输出序列的2N个值的步骤。然而,目前上述步骤是结合IS0/IEC11172-3多相合成滤波的原理描述实现,没有 经过任何优化,浮点乘法运算次数高,解码效率低。

发明内容
本发明要解决的技术问题在于,针对现有多相合成滤波方法的上述运算次数高而 解码效率低的缺陷,提供一种网络电视平台MPEG音频多相合成滤波方法。本发明解决其技术问题所采用的技术方案是构造一种网络电视平台MPEG音频 多相合成滤波方法,能够快速地对MPEG音频的输入序列的N个浮点数进行离散余弦变换以 获得输出序列的2N个值从而将频域信号转化为时域信号输出。本发明提供了一种网络电视平台MPEG音频多相合成滤波方法,用于将网络电视 平台MPEG音频的频域信号转换为时域信号输出,包括将MPEG音频的输入序列的N个浮点 数进行离散余弦变换以获得输出序列的2N个值的步骤,其中,上述步骤进一步包括以下步 骤Si)获取N个点的DCT-II值;S2)利用余弦函数的周期性和对称性获取这N个点的DCT值;S3)将上述N个点的DCT值作为输出序列的2N个值输出。在本发明所述的网络电视平台MPEG音频多相合成滤波方法中,所述步骤Si)进一 步包括以下步骤Sll)获取 N/2 个点的 DCT-II 值;S12)由上述N/2个点的DCT-II值获得N个点中偶数项点的DCT-II值;S13)由上述N/2个点的DCT-II值获得N个点中奇数项点的DCT-II值。在本发明所述的网络电视平台MPEG音频多相合成滤波方法中,所述步骤Sll)进 一步包括以下步骤Sl 11)将N/2个点DCT-II值分解为N/4个点,来获取N/2个点的DCT-II值;Sl 12)重复步骤Sl 11)的分解过程,直至N为2。
在本发明所述的网络电视平台MPEG音频多相合成滤波方法中,所述N为32。本发明还提供了一种网络电视平台MPEG音频多相合成滤波方法,用于将网络电 视平台MPEG音频的频域信号转换为时域信号输出,包括将MPEG音频的输入序列的32个浮 点数进行离散余弦变换以获得输出序列的64个值的步骤,其中,上述步骤进一步包括以下 步骤Si)获取32个点的DCT-II值;S2)利用余弦函数的周期性和对称性获取这32个点的DCT值;S3)将上述32个点的DCT值作为输出序列的64个值输出。在本发明所述的网络电视平台MPEG音频多相合成滤波方法中,所述步骤Si)进一 步包括以下步骤Sll)获取 16 个点的 DCT-II 值;S12)由上述16个点的DCT-II值获得32个点中偶数项点的DCT-II值;S13)由上述16个点的DCT-II值获得32个点中奇数项点的DCT-II值。在本发明所述的网络电视平台MPEG音频多相合成滤波方法中,所述步骤Sll)进 一步包括以下步骤Sl 11)将16个点的DCT-II值分解为8个点,来获取16个点的DCT-II值;Sl 12)重复步骤Sl 11)的分解过程,直至分解为2个点。实施本发明的网络电视平台MPEG音频多相合成滤波方法,具有以下有益效果本 发明能够快速地将频域信号转化为时域信号输出,与现有方法相比其浮点乘法运算次数降 低,解码效率高,明显改善了 MPEG技术的执行效率。


下面将结合附图及实施例对本发明作进一步说明,附图中图1是本发明优选实施例中网络电视平台MPEG音频多相合成滤波方法的流程 图;图2是本发明优选实施例中网络电视平台MPEG音频多相合成滤波方法的具体流 程图。
具体实施例方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对 本发明进行进一步详细说明。本发明提供的网络电视平台MPEG音频多相合成滤波方法用于将网络电视平台 MPEG音频的频域信号转换为时域信号输出。该方法包括将MPEG音频的输入序列的N个浮 点数进行离散余弦变换以获得输出序列的2N个值的步骤。其中,N为正整数。在现有的应 用中,N为32,即将MPEG音频的输入序列的32个浮点数进行离散余弦变换以获得输出序列 的64个值。请参阅图1,为本发明优选实施例中网络电视平台MPEG音频多相合成滤波方法的 流程图。如图1所示,本发明的方法中将MPEG音频的输入序列的N个浮点数进行离散余弦 变换以获得输出序列的2N个值的步骤进一步包括以下步骤
首先在步骤Sl中,获取N个点的DCT-II值;随后在步骤S2中,利用余弦函数的周期性和对称性获取这N个点的DCT(Discrete Cosine^Transform,离散余弦变换)值;最后在步骤S3中,将上述获得的N个点的DCT值作为输出序列的2N个值输出。请参阅图2,为本发明优选实施例中网络电视平台MPEG音频多相合成滤波方法的 具体流程图。即图1中步骤S 1进一步包括以下步骤首先在步骤Sll中,先获取N/2个点的DCT-II值;随后在步骤S12中,由上述N/2个点的DCT-II值获得N个点中偶数项点的DCT-II 值;最后在步骤S13中,由上述N/2个点的DCT-II值获得N个点中奇数项点的DCT-II值。而上述步骤Sll获取N/2个点的DCT-II值的步骤进一步包括以下步骤在步骤Slll中将N/2个点DCT-II值分解为N/4个点,来获取N/2个点的DCT-II 值;随后再将N/4个点的DCT-II值分解为N/8个点,这样递归地进行下去,不断重复 该分解过程,直至直至N为2。下面对本发明网络电视平台MPEG音频多相合成滤波方法进行分析。首先,在现有的网络电视平台MPEG音频多相合成滤波方法中,是结合ISO/ IEC11172-3来实现将MPEG音频的输入序列的32个浮点数进行离散余弦变换以获得输出序 列的64个值的。根据IS0/IEC 11172-3 ANNEX-A Figure3_A. 3 (以下简称为标准)给出的 算法,经过5个步骤将输入序列X
的32个浮点数变换为32个PCM样本值输出。以 下是标准中给出的5个步骤①Shift 64 to 1024 FIFOfor i = 64 to 1023V[i] = V[i-64]② Calculate 64 values V[i]by matrixingfor i = 0 to 63for k = 0 to 31V[i]+ = C[i] [k]*X[k]其中C[i] [k] = cos[(16+i) (2k+l) π /64]③Building a 512 values vector Ufor i = 0 to 7for j = 0 to 31U[64*i+j]+ = V[128*i+j]U[64*i+32+j]+ = V[128*i+96+j]④ Multiply U vector by D windowfor j = 0 to 511W[i] = U[i]*D[i]其中D[i]见 IS0/IEC 11172-3,Table 3_B. 3.
⑤ Calculating 32 Samplesfor i = 0 to 31Si = 0for j = 0 to 15Si+ = W[i+32*j]//Output PCM Sample =PCMi = Si*32768 在标准中给出的算法中,第②步为DCT (32 — 64)运算,将输入序列的32个值X [k] 变换为输出序列的64个值V[i],直接运算共64*32 =沈48次浮点乘法。本发明提供的方 法是针对如何改进该步骤的执行效率而进行的。主要分为以下三个阶段。在第一阶段中分解为步骤Si、步骤S2和步骤S3,是利用32点DCT-II来代替 DCT (32 — 64)。由于余弦函数具有周期性和对称性,所以DCT是具有周期性的,首先通过 DCT (32 — 32)得到输出序列的32个值,由这32个值可以直接得到DCT (32 — 64)的64个 输出值,具体方法如下//in[32], out[64]for(i = 0 ;i < 16 ;i++)out[i] = in[i+16];out [16] = 0 ;for(i = 17 ;i < 48 ;i++)out[i] = -in[48-i];for(i = 48 ;i < 64 ;i++)out[i] = -in[i-48];这里的DCT (32 — 32)为 32 点 DCT-II 型。在第二阶段中,对上述步骤Sl获取N个点的DCT-II值进一步分解,并利用将N点 DCT-II值分解为N/2点DCT-II之和来实现。将V[i]序列分为偶数项(V[2i])和奇数项(V[2i+1])。V[i]序列的偶数项可以 由N/2点的DCT-II的输出序列直接得到;DCT-IV输出序列中的一个元素可以用DCT-II输 出序列中的两个连续元素之和表示。即V[i]序列的奇数项由N/2点的DCT-II的输出序列 间接得到。在第三阶段中,继续将N/2点DCT-II再分解为两个N/4点DCT-II,并将上述推导 过程递归地进行下去,直到N = 2。由此,可以获得各点DCT-II的乘法次数如下N = 21次
N = 42+2 X 1 = 4 次
N = 84+2X4= 12 次
N = 168+2X12 = 32 次
N = 3216+2X32 = 80 次
由此可见,本发明能够快速地将频域信号转化为时域信号输出,与现有方法相比
其浮点乘法运算次数降低,解码效率高,明显改善了 MPEG技术的执行效率。 本发明是根据特定实施例进行描述的,但本领域的技术人员应明白在不脱离本发明范围时,可进行各种变化和等同替换。此外,为适应本发明技术的特定场合或材料,可对 本发明进行诸多修改而不脱离其保护范围。因此,本发明并不限于在此公开的特定实施例, 而包括所有落入到权利要求保护范围的实施例。
权利要求
1.一种网络电视平台MPEG音频多相合成滤波方法,用于将网络电视平台MPEG音频的 频域信号转换为时域信号输出,包括将MPEG音频的输入序列的N个浮点数进行离散余弦变 换以获得输出序列的2N个值的步骤,其特征在于,上述步骤进一步包括以下步骤51)获取N个点的DCT-II值;52)利用余弦函数的周期性和对称性获取这N个点的DCT值;53)将上述N个点的DCT值作为输出序列的2N个值输出。
2.根据权利要求1所述的网络电视平台MPEG音频多相合成滤波方法,其特征在于,所 述步骤Si)进一步包括以下步骤511)获取N/2个点的DCT-II值;512)由上述N/2个点的DCT-II值获得N个点中偶数项点的DCT-II值;513)由上述N/2个点的DCT-II值获得N个点中奇数项点的DCT-II值。
3.根据权利要求2所述的网络电视平台MPEG音频多相合成滤波方法,其特征在于,所 述步骤Sll)进一步包括以下步骤Sl 11)将N/2个点DCT-II值分解为N/4个点,来获取N/2个点的DCT-II值;S112)重复步骤S111)的分解过程,直至N为2。
4.根据权利要求1至3中任意一项所述的网络电视平台MPEG音频多相合成滤波方法, 其特征在于,所述N为32。
5.一种网络电视平台MPEG音频多相合成滤波方法,用于将网络电视平台MPEG音频的 频域信号转换为时域信号输出,包括将MPEG音频的输入序列的32个浮点数进行离散余弦 变换以获得输出序列的64个值的步骤,其特征在于,上述步骤进一步包括以下步骤51)获取32个点的DCT-II值;52)利用余弦函数的周期性和对称性获取这32个点的DCT值;53)将上述32个点的DCT值作为输出序列的64个值输出。
6.根据权利要求5所述的网络电视平台MPEG音频多相合成滤波方法,其特征在于,所 述步骤Si)进一步包括以下步骤511)获取16个点的DCT-II值;512)由上述16个点的DCT-II值获得32个点中偶数项点的DCT-II值;513)由上述16个点的DCT-II值获得32个点中奇数项点的DCT-II值。
7.根据权利要求6所述的网络电视平台MPEG音频多相合成滤波方法,其特征在于,所 述步骤Sll)进一步包括以下步骤Sl 11)将16个点的DCT-II值分解为8个点,来获取16个点的DCT-II值;Sl 12)重复步骤Sl 11)的分解过程,直至分解为2个点。
全文摘要
本发明涉及一种网络电视平台MPEG音频多相合成滤波方法,用于将网络电视平台MPEG音频的频域信号转换为时域信号输出,包括将MPEG音频的输入序列的N个浮点数进行离散余弦变换以获得输出序列的2N个值的步骤,其中,上述步骤进一步包括以下步骤S1)获取N个点的DCT-II值;S2)利用余弦函数的周期性和对称性获取这N个点的DCT值;S3)将上述N个点的DCT值作为输出序列的2N个值输出。实施本发明的网络电视平台MPEG音频多相合成滤波方法,能够快速地将频域信号转化为时域信号输出,与现有方法相比其浮点乘法运算次数降低,解码效率高,明显改善了MPEG技术的执行效率。
文档编号G10L19/00GK102104776SQ20091018911
公开日2011年6月22日 申请日期2009年12月21日 优先权日2009年12月21日
发明者王丛华 申请人:康佳集团股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1