ffpemg使用四:ffmepg解码+Qt显示即播放器的实现

来源:互联网 发布:淘宝联盟钱多久返利 编辑:程序博客网 时间:2024/05/16 10:55

        上篇实现了对录屏数据的推流,现在要做一个播放器对推流的数据进行播放。同样此篇不介绍流媒体服务器的搭建(另行介绍)。

        代码十分简单,只需要完成对接收数据的解码即可,这些在第一篇已经介绍,唯一注意的一点是,Qt不支持yuv格式,需要对解码的yuv做rgb的转换;转换的具体原理不再讲,虽然很简单,只是做矩阵运算,但因为是乘法运算,cup处理乘除法的效率极低,所以仍推荐用ffmpeg的转换函数sws_scale(),它里面有多媒体的优化指令,效率要高。

       思路:用线程对接受的网络数据解码,然后发送至主线程,主线程进行一张张图片的展示;(个人感觉这种播放方式效率其实不高,推流至流媒体的时候应该已是flv格式,若如此可用Qt的Phonen框架进行播放,但还没验证,目前先用这种方法实现)

上代码:


0 0