您的位置:首页 > 编程语言 > Qt开发

某牛的QT+ffmpeg 播放器 的readme

2011-01-19 15:55 288 查看
http://download.csdn.net/source/2802201
write by :lbwave@sina.com
QT+ffmpeg
大名顶顶的QT ffmpeg 我就不用说了。看看影音风暴、qq影音等现在的播放器动态库,你可以发现ffmpeg使用如此广泛。

解决视频播放的步骤如下:
1、流媒体的读入。
视频流媒体大多都是音频和视频流混合。ffmpeg在读入流媒体后实际上已经把音频流和视频六分开了。详细解说见程序对***FormatContext说明
2、解码
3、音频播放
4、视频播放
5、音视频同步

解决了以上问题,你可以轻松的写一个播放器了。

另外ffmpeg还支持读写功能的扩展、视频解码的扩展。本人在阅读ffmpeg部分源码后有很深的感触。一个用c写出来的程序,竟有如此好的结构。只能大叫佩服!!佩服!!...

1、不用SDL的理由
SDL是为游戏开发的,大量的依赖硬件加速。不用sdl是为了能方便的将程序移植到其他的平台 。
本人受条件限制未向其他系统移植。但由于没采用QT(ffmpeg)之外的其他第三方代码,相信
移植是个很小的问题。本人曾经做过arm920+qt+linux(fambuffer)的开发。
本程序仅用了Qwideg来显示,就是为了移植方便。ffmpeg用C写的可以向多种平台移植。
2、如何实现音频视频同步
本范例采用系统时钟作为主时钟,用音频时钟校正主时钟。
3、如何实现多趋缓冲
本范例采用多线程处理机制。
1、QFfmpeg :主要负责读取数据包,存入QList列表.压缩前的数据占用空间小。缓冲大小可设,按视频帧数和声卡缓冲大小决定
2、QAudioThread:音频解码
3、QVideoThread:视频解码
4、QFfPlay :播放 (没有用定时器,定时器误差太大)
4、本范例实现QT+ffmpeg播放器的基本功能,仅出于爱好开发,未进行系统排错,用于大家参考交流。
在开发期间参考了ffplay 。
5、实现在QT4.6 QT4.7forwindows版编译运行,内存无重大泄露。

本人愿提供源码和本人的研究感想,见 http://item.taobao.com/item.htm?id=8177265819
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: