从ffmpeg中提取wma pro解码器

本文介绍了作者如何从ffmpeg中提取出wma pro解码器并在VC2005上运行的过程。文章详细阐述了从确定解码器依赖文件,到使用ffmpeg的configure命令定制编解码器,再到向VC2005移植时遇到的C99与平台相关问题的解决方法,如stdint.h、结构体初始化、数组大小、宏变元等。
摘要由CSDN通过智能技术生成

 

 

经过一周半的努力,终于从ffmpeg中提取了一个包含asf解析功能和wmapro解码功能,并能在VC2005上运行的工程,当然现在还很简陋,呵呵。

这个是我第一次从ffmpeg中提取解码器模块,ffmpeg是个相当大的工程,这给提取工作带来了很大的麻烦,更大的麻烦其实在于ffmpeg遵循了C99的标准,而VC不支持。以前没怎么接触C99,经过这次移植对它稍稍了解了一下,也许是我C的水平不够,我感觉有些规定像是败笔,引用国外牛人的话就是——“stop adding shits to C”。

总之,不论C99C语言带来了什么影响,它给我的提取移植工作带来了很多的麻烦。

 

谈谈我的提取经验吧:

1.       首先,是确定你的解码器依赖哪些文件。

理论上讲,要知道依赖的文件,最好是将源代码过一遍,建立一个测试工程,将找出来的那些文件添加进去,编译,看看有没有缺失函数的错误,再寻找缺失的文件,一直这样做下去,直至测试通过。

ffmpeg是个很大的工程,内部的依赖关系很复杂,用上面的方法,估计即使能成功,耗时也肯定很多。当初我浏览了一遍ffmpeg的源码,搞清楚大体架构之后,我觉得上面的方法对于第一次使用ffmpeg的我来说,可能还不如直接看懂解码器原理,然后自己写一个来得快。

当我苦苦的啃代码的时候,别人教给了我一个简便的方法——就是使用ffmpeg自己的configure命令来定制编解码器,然后通过生成的.o文件来判断需要的.c文件。这是一个很快也很保险的方法,于是我定制了一个只包含asf解析、wmapro解码、pcm_s16le

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值