基于stm32的软件音频解码库libmad移植手册基于stm32的软件音频解码库libmad移植手册.pdf

基于stm32的软件音频解码库libmad移植手册基于stm32的软件音频解码库libmad移植手册.pdf

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于stm32的软件音频解码库libmad移植手册基于stm32的软件音频解码库libmad移植手册

原创教程 UP MCU 工作室 Libmad 音频解码库移植手册 本手册由 UP MCU 作室编写,若要转载请注明出处 2012-8-12 UP MCU 工作室 淘宝店: 1 原创教程 UP MCU 工作室 前言 目前,网络上绝大都数关于MP3 播放器的例子,大都采用vs1003 这颗硬件解码芯片或 者使用AT89C51SND1C 这颗含有内部音频解码电路的NB 单片机,软件音频解码的例子少之又 少。UP MCU 作室的相关人员花了些时间、精力,研究了目前 linux 领域很常用的一个开 源音频解码库——libmad 的解码流程,并将其成功移植到裸奔的stm32 平台上。本着资源 共享的奉献精神,本工作室 移植过程整理成手册,发布于网络,希望对大家有用。 本手册移植工作所对应的软硬件平台如下: 操作系统:windows XP 开发环境:MDK V4.23 STM 固件库版本号:V3.5.0 主芯片 :STM32F103RET6 (512K flash 64KRAM)运行于72M DA 芯片 :PCM1770PW 由于本人水平有限,文中若有不对的地方,欢迎拍砖。拍砖地址447926737wangkai@163.com 1.Libmad 简介 LIBMAD 是一个高质量的音频解码库,MAD 的全称是MPEG Audio Decoder。LIBMAD 目前 支持MPEG-1、低采样率的MPEG-2 和MPEG2.5 格式的Layer Ⅰ、Layer Ⅱ、LayerⅢ (即MP3) 的解码。 MAD 具有如下特性: ●高精度的24-BIT PCM 输出; ●100%使用定点运算; ●完全基于ISO/IEC 标准; ●支持GNU GPL 协议。 MAD 完全采用C 语言编写(里面的IMDCT 部分和乘法运算可根据平台不同使用汇编来加 快运算速度),它对MP3 解码算法做了很多优化,非常适合在没有浮点支持的嵌入式环境下 使用。利用MAD 提供的API,我们可以很容易的实现音频解码。 MAD 的源码我们可以在/projects/mad/files/下载到。 UP MCU 工作室 淘宝店: 2 原创教程 UP MCU 工作室 /products/mad 有关于libmad 的介绍和其他相关的资料, 其中madlld 这个项目是一个libmad 低层API 的demon,我的解码工作就是移植libmad 和 利用madlld 搭好的框架解析MP3 数据得到PCM 格式的数据。 2. Libmad 简单分析 下载 libmad-0.15.1b 解压后除了msvc++这个文件夹,其他的都是单个文件。其中所有 的.C、 .H、.dat 文件都是我们所需要的。minimad.c 这个文件是对libmad 高层API 的使用 示例,从代码中可以看到它是基于类unix

文档评论(0)

pfenejiarz + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档