CN105047200A - 一种基于fpga的flac硬件解码器及解码方法 - Google Patents

一种基于fpga的flac硬件解码器及解码方法 Download PDF

Info

Publication number
CN105047200A
CN105047200A CN201510429375.4A CN201510429375A CN105047200A CN 105047200 A CN105047200 A CN 105047200A CN 201510429375 A CN201510429375 A CN 201510429375A CN 105047200 A CN105047200 A CN 105047200A
Authority
CN
China
Prior art keywords
module
flac
frame
data
decoding
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.)
Pending
Application number
CN201510429375.4A
Other languages
English (en)
Inventor
刘乔寿
黄国臣
吉福生
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chongqing University of Post and Telecommunications
Original Assignee
Chongqing University of Post and Telecommunications
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chongqing University of Post and Telecommunications filed Critical Chongqing University of Post and Telecommunications
Priority to CN201510429375.4A priority Critical patent/CN105047200A/zh
Publication of CN105047200A publication Critical patent/CN105047200A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明公开了一种基于FPGA的FLAC硬件解码器及解码方法,解码器包括FLAC文件缓存模块、预处理模块、主控模块、元数据解析模块、帧同步模块、帧解码模块、左右声道缓存控制器、逆去相关模块、I2S接口模块,晶振,SRAM芯片。基于FLAC硬件解码器的核心电路如FLAC文件缓存模块、预处理模块、主控模块、元数据解析模块、帧同步模块、帧解码模块、左右声道缓存控制模块、逆去相关模块、I2S接口模块集成于FPGA中。本发明最高支持192KHz,24bit的FLAC音频的解码,采用标准的I2S接口输出音频PCM数据。

Description

一种基于FPGA的FLAC硬件解码器及解码方法
技术领域
本发明涉及音频解码器技术领域,尤其涉及一种基于FPGA的FALC音频文件硬件解码器及解码方法。
背景技术
FLAC是音频的无损压缩格式,是专门针对PCM音频的特点而设计的压缩方式。FLAC能将WAV格式的音频文件压缩到原容量的一半左右,随着人们对音乐品质的要求不断提高,FLAC格式的音乐文件将是未来最有前途的音频格式之一。由于FLAC的文件格式和编码/解码的软件实现方式完全对外公开,因此FALC的软件解码已经相当成熟。现今大多数嵌入式***采用软件的方法实现FLAC音频文件解码。但这种方法存在明显的缺点:高码率FLAC音乐的解码过程,需要占用处理器大量的***资源,数据处理能力有限的嵌入式处理器难以胜任高码率FLAC音频文件的播放任务。考虑到FLAC解码算法内部并行模块的独立性,硬件实现不失为提高FLAC音频解码实时性的有效途径之一。
FPGA是基于查找表结构的可编程器件,具有大容量的BlockRAM资源,为FLAC音频硬件解码器的硬件设计与实现提供了可能。利用FPGA实现的FLAC音频解码器,可作为IP核应用于不同SoC的无损音频播放***中,从而实现FLAC解码器在多媒体***等领域的应用,具有十分重要的意义。
发明内容
鉴于此,本发明的目的在于提供一种基于FPGA的FLAC音频硬件解码器及其解码方法。
本发明采用的技术方案是:一种基于FPGA的FLAC硬件解码器,包括FLAC文件缓存模块、预处理模块、主控模块、元数据解析模块、帧同步模块、帧解码模块、左右声道缓存控制器、逆去相关模块和I2S接口模块,其中所述FLAC文件缓存模块分别与预处理模块和主控模块连接,所述主控模块还分别与预处理模块、元数据解析模块、帧同步模块和帧解码模块连接进行数据交换,所述帧解码模块的输出端与左右声道缓存控制器连接,帧解码模块的另一输出端与逆去相关模块连接,所述逆去相关模块的输出端与I2S接口模块连接。所述I2S接口模块的输出端与外部的数模转换器连接,输入端还分别连接有22.5792M晶振和24.576M晶振。I2S接口模块还可采用FPGA内部时钟作为时钟源。
所述I2S接口模块还可采用FPGA内部时钟作为时钟源。
所述FLAC文件缓存模块用于缓存外部处理器传递进来的FLAC音频文件以及产生解码器启动信号;所述预处理模块用于将FLAC文件缓存模块输出的并行码流转换成可取任意位码元的码流;所述主控模块用于响应FALC缓存模块的解码器启动信号,控制元数据解析模块、帧同步模块和帧解码模块的运行与停止,接收预处理模块的FALC数据并传递给元数据解析模块、帧同步模块、帧解码模块;所述元数据解析模块用于提取FLAC音频文件的总采样数、采样率、采样深度、声道数,并传递给主控模块;所述帧同步模块用于同步FLAC音频帧;所述帧解码模块用于接收来自主控模块的FALC音频文件,对FLAC音频文件中的音频数据进行解码,将解码得到的PCM音频数据传递给左右声道缓存控制器;所述左右声道缓存控制器用于将帧解码模块解码得到的PCM音频数据写入SRAM芯片,读取SRAM芯片的PCM音频数据传递给逆去相关模块;所述逆去相关模块用于从帧解码模块获取当前帧采样数和声道配置信息,从左右声道缓存控制器获取PCM音频数据,还原左右声道PCM音频数据的相关性,将还原得到的PCM音频数据传递给I2S接口模块;所述I2S接口模块用于将从逆去相关模块传递过来的并行的PCM音频数据以串行方式输出到外部数模转换器,根据逆去相关模块传递过来的采样率参数选择22.5792M或者24.576M晶振作为采样时钟输入,并进行分频得到所需要的采样率。
利用上述基于FPGA的FLAC硬件解码器进行解码的方法,包括如下步骤:
S1:外部处理器将FLAC音频文件缓存在FLAC文件缓存模块中;
S2:FLAC文件缓存模块输出的并行的FLAC音频文件数据经过预处理模块处理转换成可取任意位的码流;
S3:在主控模块的控制下,元数据解析模块解析FLAC音频文件的元数据部分;帧同步模块负责同步音频帧;帧解码模块解码FLAC音频文件中的编码数据;
S4:左右声道缓存控制器将帧解码模块的解码数据写入到外部SRAM芯片中;并从SRAM芯片中读取左右声道的音频数据传递到逆去相关模块进行相关性还原;
S5:I2S接口模块根据FLAC音频文件的采样率选择合适的外部时钟作为时钟源进行分频,按照I2S总线标准将PCM音频文件数据输出到外部数模转换器。
具体地,步骤S3中的元数据解析模块、帧同步模块和帧解码模块都需要从预处理模块获取FLAC音频文件的数据。
进一步,步骤S5中所述FLAC音频文件的采样率由元数据解析模块解析得到,I2S接口模块对选择外部时钟进行分频得到所需的采样时钟。
在本发明的具体实施例中,I2S接口模块采用外部晶振或者FPGA内部时钟作为时钟源。
本发明具有以下有益效果:
(1)本发明具有较高的功能集成度,集FLAC文件信息解析、音频解码、I2S输出等功能于一体,可作为IP核应用于不同SoC的无损音频播放***中,为无损音频播放***的设计提供一套音频解码的解决方案。
(2)本发明支持全部压缩等级的FLAC音频文件的解码,利用FPGA并行处理特性,解码效率高、性能稳定。
附图说明
图1是本发明基于FPGA的FLAC硬件解码器的结构框图。
具体实施方式
下面结合附图对本发明进行说明如下:
参见附图1,一种基于FPGA的FLAC硬件解码器,包括与外部处理器10连接的FLAC文件缓存模块1、预处理模块2、主控模块3、元数据解析模块4、帧同步模块5、帧解码模块6、与外部SRAM芯片11连接的左右声道缓存控制器7、逆去相关模块8和与外部数模转换器12连接的I2S接口模块9,其中所述FLAC文件缓存模块1分别与预处理模块2和主控模块3连接,所述主控模块3还分别与预处理模块2、元数据解析模块4、帧同步模块5和帧解码模块6连接进行数据交换,所述帧解码模块6的输出端与左右声道缓存控制器7连接,帧解码模块6的另一输出端与逆去相关模块8连接,所述逆去相关模块8的输出端与I2S接口模块9连接。
FLAC文件缓存模块1负责储存处理器传递进来的FLAC数据,包括FIFO模块和启动信号发生器。
预处理模块2负责将FLAC文件缓存模块输出的并行码流转换成可取任意位码元的码流。
主控模块3是整个FLAC解码器的核心控制模块,采用状态机实现对元数据解析模块、帧同步模块和帧解码模块的控制,实时响应模块解码过程中反馈的信息。
元数据解析模4块负责从FLAC文件的streaminfo类型的元数据块中解析出采样率、声道数量、采样深度、总采样数提供给帧解码模块。
帧同步模块5帧负责检测帧头部最开始的14比特是否是正确的同步字‘11111111111110’,并且对帧头进行CRC-8校验。
帧解码模块6是整个解码器的核心解码部分,负责对FALC音频编码数据进行残差解码、预测编码还原。
左右声道缓存控制器7用于将从帧解码模块传递过来的解码值写入到外部SRAM芯片。并且响应逆去相关模块的数据请求,从外部SRAM芯片中读取左右声道的解码值传递给逆去相关模块。
逆去相关模块8用于还原在编码过程中被去除相关性的左右声道编码数据间的相关性。
I2S音频接口模块9负责将并行的PCM数据按照I2S总线标准以串行方式传输到外部数模转换器12。I2S音频接口模块包括分频模块和并串转换模块。分频模块根据FLAC音频的采样率选择22.5792MHz晶振或者24.576MHz晶振作为输入时钟,并分频出I2S的3个时钟信号,同时分频出的BCLK也作为并串转换模块的时钟。并串转换模块负责将并行的PCM数据按照I2S总线标准以串行方式传输到外部数模转换器。
本发明对FLAC文件的具体解码步骤为:
1.外部处理器将FLAC音频文件的数据写入到FLAC文件缓存模块,当FLAC文件缓存模块首次写满时,向主控模块发出有效启动信号Start。
2.预处理模块从FLAC缓存模块载入FLAC数据,将FLAC缓存模块输出的并行FLAC数据转换成可取任意比特的码流,并将数据接口提供给主控模块、元数据解析模块、帧同步模块、帧解码模块。
3.主控模块在检测到FLAC文件缓存模块产生的有效启动信号Start后会退出空闲状态,从预处理模块中获取前4个字节的码流,如果检测到这4个字节是FLAC文件的标志“FlaC”,则会使能元数据解析模块。如果检测到不是有效和FLAC文件标志,则会向外部处理器反馈信号info[2:0]=‘001’,提示不是FLAC文件。
4.元数据解析模块从预处理模块中获取4字节的元数据块头部。提取此元数据块的类型、长度以及是否是最后一个元数据块标志位。如果是streaminfo类型的元数据块则根据此元数据块的长度从预处理模块中获取相应长度的FLAC数据,解析出采样率、声道数量、采样深度、总采样数。如果不是streaminfo类型的元数据块则采取跳过措施,将此元数据块从预处理模块取出但不作处理。如果FLAC元数据存在错误,元数据解析模块会向主控模块发出S1_Error信号有效,主控模块检测到此S1_Error信号有效后会向外部处理器反馈信号info[2:0]=‘010’,提示不是FLAC文件。如果元数据解析模块成功完成所有元数据的解析工作,则会向主控模块发出S1_Finish信号有效。
5.主控模块检测到元数据解析模块传递过来的S1_Finish信号有效后使能帧同步模块进行帧同步,并实时检测帧同步模块的反馈信号Syn_Frame。
6.帧同步模块被主控模块使能后,从预处理模块寻找帧同步字‘11111111111110’,如果是正确的同步字,则继续从预处理模块获取完整的帧头数据,并对帧头进行CRC-8校验,帧同步模块从帧头中提取出当前帧的采样数、采样率、声道数、声道配置方式、采样深度,提取到的这些参数用于后续的帧解码模块。最后帧同步模块向主控模块发送Syn_Frame有效信号。
7.主控模块检测到帧同步传递过来的Syn_Frame有效信号后,使能帧解码模块开始解码FLAC数据。
8.帧解码模块从预处理模块获取子帧头部,提取出子帧类型和无意义比特数wasted_bits。FLAC音频有四种子帧类型:常量类型、原样类型、固定线性编码类型、非线性预测编码类型。如果子帧为固定线性预测编码类型和非线性预测编码类型,在子帧类型字中还包含预测编码的阶数:固定线性预测阶数fixed_order和非线性预测阶数lpc_order。帧解码模块需要从帧同步模块中获取采样数samples_number、声道数channels_number、采样深度sample_deep、声道配置方式。采样数samples_number为每子帧包含的样本数量。声道数channels_number等于当前帧中子帧数量。上述四种子帧类型的以未编码形式存在的采样样本的比特数bits_per_sample需要做如下修正:
1)如果此帧采用独立编码方式,则bits_per_sample=sample_deep-wasted_bits;
2)如果此帧采用left_side编码方式,对于左声道,bits_per_sample=sample_deep-wasted_bits;对于右声道,bits_per_sample=sample_deep-wasted_bits+1;
3)如果此帧采用right_sigde编码方式,对于左声道,bits_per_sample=sample_deep-wasted_bits+1;对于右声道,bits_per_sample=sample_deep-wasted_bits;
4)如果此帧采用mid_side编码方式,对于左声道,bits_per_sample=sample_deep-wasted_bits;对于右声道,bits_per_sample=sample_deep-wasted_bits+1。
9.如果子帧是常量类型,需要从预处理模块再提取bits_per_sample比特的样本,将此样本连续输出samples_number次即可。
10.如果是原样类型需要从预处理模块连续获取samples_number次,每次取bits_per_sample比特的样本进行输出。
11.如果是固定线性预测编码类型,需要先从预处理模块获取fixed_oder个bits_per_sample比特数的训练样本。FLAC对经过预测编码残留下来的残差采用RICE编码方式进行编码,本发明采用如下方法进行解码:
1)获取Rice编码方式:4比特模式或5比特模式;
2)先提取残差编码数据区的分区阶数partition_oder,总共分区数为partitions=2^partition_oder。
3)解码残差分区n,n=0,1,2,…partitions-1,根据Rice编码方式,从预处理模块获取4比特或者5比特的数据作为Rice_parameter。
4)如果Rice_parameter的二进制形式为全‘1’,则说明FLAC对经过预测编码残留下来的残差没有经过Rice编码。此时需要从预处理模块读取5比特的数据作为样本比特数bps。如果当前为残差分区0,则从预处理模块连续获取(samples_number/partitions)-fixed_order次,每次取bps比特的数值作为残差值X输出。
5)如果Rice_parameter的二进制形式不是全‘1’,则说明FLAC对经过预测编码残留下来的残差经过了Rice编码。解码方法为:首先从预处理模块的输出码流中计算计算停止位‘1’前‘0’的个数为n。再从停止位‘1’后面取出Rice_parameter比特的二进制码,用k表示此二进制码所代表的十进制数。再进行如下计算:H=n*(2^Rice_parameter)+k。根据H的奇偶计算最终的残差X,如果H是偶数,X=H/2,如果H是奇数,X=-((H+1)/2)。
6)将训练样本sample0,sample1,..,samplefixed_oder-1和步骤4或者步骤5中得到的残差值X输入到固定线性预测编码还原器。每轮还原得到的值与sample1,..,samplefixed_oder-1组成新的训练样本进行下一轮还原。
12.如果是非线性预测编码类型,需要先从预处理模块获取lpc_oder个bits_per_sample比特数的训练样本、4比特的预测器预测因子比特数、5比特的预测器预测因子移位比特数、lpc_order个预测系数。FLAC对经过预测编码残留下来的残差采用RICE编码方式进行编码,本发明采用与上述固定线性预测编码类型相同的方法解码得到残差。将训练样本sample0,sample1,..,samplefixed_oder-1和预测系数pre_coeff0,pre_coeff1,…,pre_coefflpc_order-1以及解码得到的残差值X输入到固定线性预测编码还原器。每轮还原得到的值与sample1,..,samplefixed_oder-1组成新的训练样本进行下一轮还原。
13.由步骤9)、10)、11)、12)得到的解码值经过左右声道缓存控制模块写入外部SRAM。并实时响应逆去相关模块的数据请求,从外部SRAM中读取左右声道音频数据,传递给逆去相关模块。
14.逆去相关模块实时响应I2S接口模块的数据请求,从左右声道缓存控制模块获取一次左声道音频数据left_data和右声道音频数据right_data,并对此左、右声道数据进行相关性还原。根据此次数据帧的声道配置方式,选择如下方式进行相关性还原得到左声道音频PCM数据left_pcm和右声道音频PCM数据right_pcm:
1)如果为独立编码方式,left_pcm=left_data,right_pcm=right_data;
2)如果为left_side编码方式,left_pcm=left_data,right_pcm=left_data-right_data;
3)如果为right_side编码方式,left_pcm=right_data+left_data,right_pcm=right_data;
4)如果为mid_side编码方式,left_pcm=((left_data*2)+right_data)/2,right_pcm=((left_data*2)-right_data)/2。
15.I2S接口模块根据步骤4中获得的采样率,选择相应的外部时钟源作为输入时钟。如果FLAC音频采样率为44.1/88.2/176.4KHz,则选择22.5792MHz作为输入时钟;如果FLAC音频采样率为48/96/192KHz,则选择24.576MHz作为输入时钟。I2S接口模块包括分频模块和并串转换模块,分频模块对输入时钟分频出I2S的3个时钟信号:主时钟(MCLK)、声道时钟(LRCK)、位时钟(BCLK)。按照I2S总线标准,将从逆去相关模块获取的左右声道音频PCM数据left_pcm和right_pcm以串行方式依次输出到外部数模转换芯片。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下还可以做出若干改进,这些改进也应视为本发明的保护范围。

Claims (7)

1.一种基于FPGA的FLAC硬件解码器,其特征在于:包括FLAC文件缓存模块(1)、预处理模块(2)、主控模块(3)、元数据解析模块(4)、帧同步模块(5)、帧解码模块(6)、左右声道缓存控制器(7)、逆去相关模块(8)和I2S接口模块(9),其中所述FLAC文件缓存模块(1)分别与预处理模块(2)和主控模块(3)连接,所述主控模块(3)还分别与预处理模块(2)、元数据解析模块(4)、帧同步模块(5)和帧解码模块(6)连接进行数据交换,所述帧解码模块(6)的输出端与左右声道缓存控制器(7)连接,帧解码模块(6)的另一输出端与逆去相关模块(8)连接,所述逆去相关模块(8)的输出端与I2S接口模块(9)连接;
所述FLAC文件缓存模块(1)用于缓存外部处理器(10)传递进来的FLAC音频文件以及产生解码器启动信号;
所述预处理模块(2)用于将FLAC文件缓存模块(1)输出的并行码流转换成可取任意位码元的码流;
所述主控模块(3)用于响应FALC缓存模块(1)的解码器启动信号,控制元数据解析模块(4)、帧同步模块(5)和帧解码模块(6)的运行与停止,接收预处理模块(2)的FALC数据并传递给元数据解析模块(4)、帧同步模块(5)、帧解码模块(6);
所述元数据解析模块(4)用于提取FLAC音频文件的总样本数、采样率、采样深度、声道数,并传递给主控模块(3);
所述帧同步模块(5)用于同步FLAC音频帧;
所述帧解码模块(6)用于接收来自主控模块(3)的FALC音频文件,对FLAC音频文件中的音频数据进行解码,将解码得到的PCM音频数据传递给左右声道缓存控制器(7);
所述左右声道缓存控制器(7)用于将帧解码模块(6)解码得到的PCM音频数据写入SRAM芯片(11),读取SRAM芯片(11)的PCM音频数据传递给逆去相关模块(8);
所述逆去相关模块(8)用于从帧解码模块(6)获取当前帧采样数和声道配置信息,从左右声道缓存控制器(7)获取PCM音频数据,还原左右声道PCM音频数据的相关性,将还原得到的PCM音频数据传递给I2S接口模块(9);
所述I2S接口模块(9)用于将从逆去相关模块(8)传递过来的并行的PCM音频数据以串行方式输出到外部数模转换器(12)。
2.根据权利要求1所述一种基于FPGA的FLAC硬件解码器,其特征在于:所述I2S接口模块(9)的输出端与外部的数模转换器(12)连接,输入端还分别连接有22.5792M晶振和24.576M晶振。
3.根据权利要求1所述一种基于FPGA的FLAC硬件解码器,其特征在于:所述I2S接口模块(9)还可采用FPGA内部时钟作为时钟源。
4.利用权利要求1所述基于FPGA的FLAC硬件解码器进行解码的方法,其特征在于,包括如下步骤:
S1:外部处理器将FLAC音频文件缓存在FLAC文件缓存模块中;
S2:FLAC文件缓存模块输出的并行的FLAC音频文件数据经过预处理模块处理转换成可取任意位的码流;
S3:在主控模块的控制下,元数据解析模块解析FLAC音频文件的元数据部分;帧同步模块负责同步音频帧;帧解码模块解码FLAC音频文件中的编码数据;
S4:左右声道缓存控制器将帧解码模块的解码数据写入到外部SRAM芯片中;并从SRAM芯片中读取左右声道的音频数据传递到逆去相关模块进行相关性还原;
S5:I2S接口模块根据FLAC音频文件的采样率选择合适的外部时钟作为时钟源进行分频,按照I2S总线标准将PCM音频文件数据输出到外部数模转换器。
5.根据权利要求4所述基于FPGA的FLAC硬件解码器的解码方法,其特征在于:步骤S3中的元数据解析模块、帧同步模块和帧解码模块都需要从预处理模块获取FLAC音频文件的数据。
6.根据权利要求4所述基于FPGA的FLAC硬件解码器的解码方法,其特征在于:步骤S5中所述FLAC音频文件的采样率由元数据解析模块解析得到,I2S接口模块对选择外部时钟进行分频得到所需的采样时钟。
7.根据权利要求4所述基于FPGA的FLAC硬件解码器的解码方法,其特征在于:I2S接口模块采用外部晶振或者FPGA内部时钟作为时钟源。
CN201510429375.4A 2015-07-21 2015-07-21 一种基于fpga的flac硬件解码器及解码方法 Pending CN105047200A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510429375.4A CN105047200A (zh) 2015-07-21 2015-07-21 一种基于fpga的flac硬件解码器及解码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510429375.4A CN105047200A (zh) 2015-07-21 2015-07-21 一种基于fpga的flac硬件解码器及解码方法

Publications (1)

Publication Number Publication Date
CN105047200A true CN105047200A (zh) 2015-11-11

Family

ID=54453687

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510429375.4A Pending CN105047200A (zh) 2015-07-21 2015-07-21 一种基于fpga的flac硬件解码器及解码方法

Country Status (1)

Country Link
CN (1) CN105047200A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170096472A (ko) * 2016-02-16 2017-08-24 삼성전자주식회사 오디오 처리 장치 및 그 제어 방법
CN107391080A (zh) * 2017-07-25 2017-11-24 青岛海信电器股份有限公司 基于zynq的主芯片、adas及利用其进行语音提示的方法
CN107507617A (zh) * 2017-08-15 2017-12-22 深圳山灵数码科技发展有限公司 一种实现dsd音频硬解的***及方法
CN108391202A (zh) * 2018-02-27 2018-08-10 惠州市德赛西威汽车电子股份有限公司 一种车载音频动态采样方法及***

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101958139A (zh) * 2010-08-10 2011-01-26 闫天时 高清无损音频播放***(hdap)
CN101968960A (zh) * 2010-09-19 2011-02-09 北京航空航天大学 一种基于faac及faad2的多路音频实时编解码硬件设计平台
CN103269257A (zh) * 2013-05-13 2013-08-28 联发科技(新加坡)私人有限公司 一种检测变长编码码流错误的方法和解码及错误检测装置
CN104036788A (zh) * 2014-05-29 2014-09-10 百度在线网络技术(北京)有限公司 音频文件的音质识别方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101958139A (zh) * 2010-08-10 2011-01-26 闫天时 高清无损音频播放***(hdap)
CN101968960A (zh) * 2010-09-19 2011-02-09 北京航空航天大学 一种基于faac及faad2的多路音频实时编解码硬件设计平台
CN103269257A (zh) * 2013-05-13 2013-08-28 联发科技(新加坡)私人有限公司 一种检测变长编码码流错误的方法和解码及错误检测装置
CN104036788A (zh) * 2014-05-29 2014-09-10 百度在线网络技术(北京)有限公司 音频文件的音质识别方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ZHU FANG 等: "Design and Research on Free Lossless Audio Decoding Systems under the Embedded Development Platform of ARM9", 《SECOND INTERNATIONAL SYMPOSIUM ON INFORMATION SCIENCE AND ENGINEERING》 *
张宁: "基于ARM嵌入式的无损音频解码器研究", 《器件与电路》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170096472A (ko) * 2016-02-16 2017-08-24 삼성전자주식회사 오디오 처리 장치 및 그 제어 방법
KR102461324B1 (ko) * 2016-02-16 2022-10-31 삼성전자주식회사 오디오 처리 장치 및 그 제어 방법
CN107391080A (zh) * 2017-07-25 2017-11-24 青岛海信电器股份有限公司 基于zynq的主芯片、adas及利用其进行语音提示的方法
CN107391080B (zh) * 2017-07-25 2021-03-30 海信视像科技股份有限公司 基于zynq的主芯片、adas及利用其进行语音提示的方法
CN107507617A (zh) * 2017-08-15 2017-12-22 深圳山灵数码科技发展有限公司 一种实现dsd音频硬解的***及方法
CN108391202A (zh) * 2018-02-27 2018-08-10 惠州市德赛西威汽车电子股份有限公司 一种车载音频动态采样方法及***

Similar Documents

Publication Publication Date Title
JP4724452B2 (ja) デジタルメディア汎用基本ストリーム
CN101996636A (zh) 带多级码本和冗余编码的子带话音编解码器
CN102368385B (zh) 后向块自适应Golomb-Rice编解码方法及装置
CN102047336B (zh) 用于产生或截除或改变包括至少一个报头部分在内的基于帧的比特流格式文件的方法和设备以及相应数据结构
CN105047200A (zh) 一种基于fpga的flac硬件解码器及解码方法
JPWO2005081229A1 (ja) オーディオエンコーダ及びオーディオデコーダ
US8665945B2 (en) Encoding method, decoding method, encoding device, decoding device, program, and recording medium
KR20100089772A (ko) 오디오 신호의 부호화 및 복호화 방법 및 그 장치
CN101136203A (zh) 信号处理设备、方法、记录介质和程序
CN102385864B (zh) 一种音频数据解码方法、装置及音频播放器
KR20120096541A (ko) 디지털 신호의 압축 또는 압축해제를 위한 방법, 시스템 및 장치
KR20200012861A (ko) 디지털 오디오 신호에서의 차분 데이터
CN101615911B (zh) 一种编解码方法和装置
CN101454829B (zh) 搜索固定码本的方法和设备以及使用搜索固定码本的方法和设备对语音信号编码/解码的方法和设备
US9070362B2 (en) Audio quantization coding and decoding device and method thereof
CN101626242B (zh) 改进的霍夫曼解码方法及装置
CN107545899A (zh) 一种基于清音基音延迟抖动特性的amr隐写方法
CN100538820C (zh) 一种对音频数据进行处理的方法及装置
CN1774742B (zh) 码变换方法及码变换装置
US20140074460A1 (en) Scalable code excited linear prediction bitstream
JP2006350090A (ja) クライアント・サーバ音声認識方法、サーバ計算機での音声認識方法、音声特徴量抽出・送信方法、これらの方法を用いたシステム、装置、プログラムおよび記録媒体
CN101346759B (zh) 代码转换装置、用于代码转换装置的代码转换方法及程序
CN114299971A (zh) 一种语音编码方法、语音解码方法和语音处理装置
KR100686354B1 (ko) 가변 트리를 이용한 허프만 복호화 방법 및 장치
CN101256775B (zh) 一种mp3位串排列方法与装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20151111