音频数据的解码方法和装置以及应用其的片上系统的制作方法

文档序号:9418687阅读:385来源:国知局
音频数据的解码方法和装置以及应用其的片上系统的制作方法
【技术领域】
[0001] 本发明涉及计算机领域,具体涉及一种音频数据的解码方法和装置以及应用其的 片上系统。
【背景技术】
[0002] 在S0C(System on Chip,芯片级系统)电路中,解码器可以有软解码和硬解码两 种,硬解码也就是使用硬件来解码,当集成电路设计完成之后,解码能力也就确定了,无法 修改,所以硬解码器一般都会存在某些格式的兼容问题,比如存在硬解码器无法播放WMA 多负载(WM Multiple Payload)音频文件的问题,但能够播放WM单负载(WM Single Payload)歌曲,当遇到这样的问题时,软件上传统的做法是跳过不能播放的歌曲,不去解 码,这样就会降低解码能力。
[0003] 如果能够在不修改硬解码器的情况下,也有办法播放WM多负载音频文件,就能 够提高SOC的解码能力,也可以不用修改硬解码核,节省成本,降低损失。

【发明内容】

[0004] 有鉴于此,本发明提供一种音频数据的解码方法和装置以及应用其的片上系统, 在音频数据经过硬解码器之前增加格式转换单元,以解决上述问题。
[0005] 在本发明的一方面,本发明提供一种音频数据的解码方法,包括:获取第一音频数 据;判断所述第一音频数据是否具有第一数据格式;将有第一数据格式的第一音频数据转 换为第二音频数据,所述第二音频数据具有第二数据格式;控制硬解码器解码所述第二音 频数据。
[0006] 优选地,还包括:在所述第一音频数据具有第二数据格式时,控制硬解码器解码具 有所述第二数据格式的所述第一音频数据。
[0007] 优选地,所述第一数据格式为WMA多负载WMA Multiple Payload格式,所述第二 数据格式为WMA单负载WMA Single Payload格式。
[0008] 优选地,根据所述第一音频数据的数据包的信息解析段的第一字段判断所述第一 音频数据是否是WMA多负载WMA Multiple Payload格式。
[0009] 优选地,所述将所述具有第一数据格式的第一音频数据转换为第二音频数据包 括:根据WM多负载WMA Multiple Payload格式解析所述第一音频数据,提取文件头和数 据包的误差校正数据段,信息解析段,有效数据段和补位段;从有效数据段中提取第一个到 第η个子包包头和子包数据,其中η为大于等于1的整数;修改所述文件头、信息解析段和 每个子包包头,并将修改后的文件头、误差校正数据段、修改后的信息解析段、补位段以及 修改后的η个子包包头和子包数据组织起来生成具有η个包数据的第二音频数据。
[0010] 优选地,所述解码方法应用于音频解码片上系统(SOC),所述音频解码片上系统 包括微控制器、所述硬解码器和解码器缓存;所述控制解码器解码所述第二音频数据包括: 所述微控制器获取所述第二音频数据并保存在所述解码器缓存中,所述硬解码器从所述解 码器缓存中获取所述第二音频数据进行解码。
[0011] 优选地,所述将所述具有第一数据格式的第一音频数据转换为第二音频数据包 括:根据WM多负载WMA Multiple Payload格式解析所述第一音频数据,提取文件头、误差 校正数据段、信息解析段、有效数据段、补位段以及一个子包包头;将所述第一音频数据在 解码器缓存的存储位置作为解码器缓存的第二位置,获取第一个以及η个子包数据在第二 位置的起始地址和长度;将误差校正数据段、修改后的信息解析段、修改后的子包包头顺序 存储到所述解码器缓存的第一位置,以及将补位段存储到解码器缓存的第三位置。
[0012] 优选地,所述解码方法应用于音频解码片上系统(SOC),所述音频解码片上系统包 括微控制器和所述硬解码器;所述控制硬解码器解码所述第二音频数据包括:先控制硬解 码器解码第一位置的公共数据,再控制硬解码器解码第二位置的第η个子包数据,最后解 码第三位置的补位段,其中η是大于等于1的整数;按上述步骤顺序解码第二位置的每个子 包数据。
[0013] 在本发明的另一方面,本发明提供一种音频解码装置,包括:获取单元,用于获取 第一音频数据;判断单元,用于判断所述第一音频数据是否具有第一数据格式;格式转换 单元,用于将所述具有第一数据格式的第一音频数据转换为第二音频数据,所述第二音频 数据具有第二数据格式;解码单元,用于控制硬解码器解码所述第二音频数据。
[0014] 优选地,所述解码单元还用于解码具有所述第二数据格式的第一音频数据。
[0015] 优选地,所述第一数据格式为WMA多负载WMA Multiple Payload,所述第二数据格 式为 WMA 单负载 WMA Single Payload。
[0016] 优选地,根据所述第一音频数据的数据包的信息解析段的第一字段判断所述第一 音频数据是否是WMA多负载WMA Multiple Payload格式。
[0017] 优选地,所述格式转换单元包括:解析模块,用于根据WMA多负载WMA Multiple Payload格式解析所述第一音频数据,提取文件头和数据包的误差校正数据段,信息解析 段,有效数据段和补位段,从有效数据段中提取第一个到第η个子包包头和子包数据,其中 η为大于等于1的整数,根据WMA单负载WMA Single Payload格式修改所述文件头、信息解 析段和每个子包包头;创建模块,用于将修改后的文件头、误差校正数据段、修改后的信息 解析段、补位段以及修改后的η个子包包头和子包数据组织起来生成具有η个包数据的第 二音频数据。
[0018] 优选地,所述解码单元应用于音频解码片上系统(SOC),所述音频解码片上系统包 括微控制器、所述硬解码器和解码器缓存;所述解码单元用于控制所述微控制器获取所述 第二音频数据并保存在所述解码器缓存中,并控制所述硬解码器从所述解码器缓存中获取 所述第二音频数据进行解码。
[0019] 优选地,所述格式转换单元包括:提取模块,用于根据WMA多负载WMA Multiple Payload格式解析所述第一音频数据,提取文件头、误差校正数据段,信息解析段,有效数据 段和补位段以及一个子包包头;寻址模块,用于将所述第一音频数据在解码器缓存的存储 位置作为解码器缓存的第二位置,获取第一个以及η个子包数据在第二位置的起始地址和 长度;存储模块,用于将误差校正数据段、修改后的信息解析段、修改后的子包包头顺序存 储到所述解码器缓存的第一位置,以及将补位段存储到解码器缓存的第三位置。
[0020] 优选地,所述解码单元控制所述硬解码器先解码第一位置的公共数据,再控制硬 解码器解码第二位置的第η个子包数据,最后解码第三位置的补位段,其中η是大于等于I 的整数;以及按上述步骤顺序解码第二位置的每个子包数据。
[0021] 第三方面,本发明还提供一种片上系统,包括微处理器、硬解码器和解码缓存,所 述微处理器被配置为适于执行如上所述的方法。
[0022] 本发明提供一种音频数据的解码方法,通过将第一音频数据转换成第二音频数 据,在不修改硬解码器的条件下,实现硬解码器对具有第一数据格式的音频数据的解码,更 具体地,通过WM单负载的硬解码器实现WM多负载的音频数据的解码。本发明同时提供 应用上述解码方法的音频解码装置。本发明提供的方法适用于解决SOC电路在解码格式上 存在的兼容性问题,通过将WM多负载格式转换成SOC电路能够支持的WM单负载格式,提 高了 SOC电路的适应性,节约了产品研发成本。
【附图说明】
[0023] 通过参照以下附图对本发明实施例的描述,本发明的上述以及其它目的、特征和 优点将更为清楚,在附图中:
[0024] 图1是本发明实施例的音频数据的解码方法的流程图;
[0025] 图2a_2b是WM多负载格式转成WM单负载格式的两个实施例的流程图;
[0026] 图3a_3d是WM多负载格式转成WM单负载格式各个步骤的数据结构图;
[0027] 图4是本发
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1