• 超级简单的跨平台高性能音视频播放框架QtAv编译指南


    一、了解QtAv

    这几天抱着试一试的心态,尝试着了解了下QtAv这个库,感觉确实挺不错的,因此就打算学习下这个库。

    断断续续的看了不少文章,大多数都是通过百度搜索出来的文章。说实话百度上大多数文章内容都差不多,而且很少有文章说清楚了编译时的环境配置和编译器上的区别,导致我自己也一度认为这个库很难编译。其实真的不难

    网上的资源真的很多,但是有点儿杂乱,新手上来一看可能很容易就懵逼了。可是我这里要告诉大家,真的不需要害怕,这个库的编译真的炒鸡简单,不信看我第三小节开始的编译步骤,简单到不敢相信。

    因为我看到了windows编译qtav这篇文章,文章中清楚的说明了环境变量配置是需要根据编译器进行选择设置的,这时自己的思路也一下子就开阔了。

    我这里使用的是QtCreator编辑器,编译器使用的是是MSVC,是vs2013的编译器。所以头文件需要配置到Include上,库文件需要配置到Lib目录上。

    如果是gcc的编译器,配置才可能像下边这样。这个我没有测试,因为我自己是msvc环境,不过网上这么多人说了,估计应该也没啥问题。这也是为啥我开头说网上资源乱,因为我看的大多数是Mingw集成环境下的文章。

    CPATH : C:UsersAdministratorDesktopQtAV-depends-windows-x86+x64QtAV-depends-windows-x86+x64include
    LIBRARY_PATH : C:UsersAdministratorDesktopQtAV-depends-windows-x86+x64QtAV-depends-windows-x86+x64lib
    

    首先说明我的编译环境:

    • Qt版本:Qt5.7.1
    • 编译器:vs2013上的MSVC编译器
    • 编辑工具:QtCreator 4.2,其实跟这个关系不大,只是一个ide而已,我们使用的编译器仍然是微软的msvc编译器。
    • 系统:Win10 64位

    重点强调下,windows编译qtav这篇文章一定要看,内容真的很实用。主要是告诉你在编译前期,msvc和gcc两种编译器下,怎么去配置环境变量。

    二、相关文章

    编译步骤:Qt5.5.0编译QtAV

    不同编译器下环境变量配置:windows编译qtav

    我自己是看着Qt5.5.0编译QtAV这篇文章进行编译的,最起码资源都是在文章中的连接里下载的,包括QtAv源码和依赖库QtAV-depends-windows-x86+x64

    但是参考这篇文章中配置环境变量时,一定要注意,这篇文章中的作者是GCC编译器。而我们自己去要根据自己的编译环境来配置环境变量,如果你是MINGW集成环境,也就是说你是GCC编译器,那么恭喜你,直接按原文配置即可。

    但是,如果你不是GCC编译器,那么你就需要看windows编译qtav
    这篇文章,他会告诉你,其他编译器怎么配置环境变量

    MSVC编译器,配置方法如下。把头文件和库文件分别配置在Include和LIB目录上。
    如果是gcc的编译器,需要把头文件和库文件分别配置在CPATH和LIBTRARY_PATH环境变量上。

    image

    三、下载QtAv源码

    源码下载时直接上官方的github即可,QtAv

    四、下载QtAv依赖库

    由于QtAv是基于ffmpeg开发的,因此我们需要下载相关依赖库。QtAV-depends-windows-x86+x64

    五、设置环境变量

    根据不同编译器设置方法不一样,具体参看windows编译qtav这篇文章

    1、gcc设置方式

    CPATH : C:UsersAdministratorDesktopQtAV-depends-windows-x86+x64QtAV-depends-windows-x86+x64include
    LIBRARY_PATH : C:UsersAdministratorDesktopQtAV-depends-windows-x86+x64QtAV-depends-windows-x86+x64lib
    

    2、msvc(cl)设置方式

    image
    图中环境变量列表中加粗的字即是我添加的环境变量,msvc编译器下INCLUDE和LIB这个两个变量本身就是存在的,所以我们只需要在值那一列把include和lib目录添加上即可。

    注意:需要添加自己的QtAV-depends-windows-x86+x64依赖库路径

    六、编译

    环境变量配置好之后,直接点击构建即可,编译成功后,效果如下
    image

    七、测试

    编译完成之后,我们会发现bin目录下会有很多可执行文件,这个时候我们可以执行其中某一个可执行文件对我们编译的库进行测试。

    首先拷贝QtAv的依赖库ffmpeg,找到之前解压的QtAV-depends-windows-x86+x64文件夹,把里边的bin目录下的资源文件都拷贝到我们刚才编译出来的QtAv目录下。

    找到我们刚才编译生成的bin目录,打开里边的simpleplayer.exe可执行程序。选择一个本地的资源文件进行播放,效果图可能如下图所示,这里是只放了一张图,主要作为示意。

    image

    到这里,我们的QtAv就编译完成了。

    后续有时间我会尝试使用这个库,然后做更进一步的分析

    如果您觉得文章不错,不妨给个打赏,写作不易,感谢各位的支持。您的支持是我最大的动力,谢谢!!!




    很重要--转载声明

    1. 本站文章无特别说明,皆为原创,版权所有,转载时请用链接的方式,给出原文出处。同时写上原作者:朝十晚八 or Twowords

    2. 如要转载,请原文转载,如在转载时修改本文,请事先告知,谢绝在转载时通过修改本文达到有利于转载者的目的。


  • 相关阅读:
    Entity Framework 中Decimal字段长度设置方法
    DWZ框架的使用
    .net mvc之web开发体会
    ASP.NET MVC3.0中同一View如何返回多个Model或数据集
    html5中 viewport 的用法
    swagger-REST API
    Git 添加SSH 取消了输入帐号密码
    [转]并发insert情况下会发生重复的数据插入问题
    如何编写适用于Echarts Map的js文件
    [转]OpenLayers 3 自定义坐标系
  • 原文地址:https://www.cnblogs.com/swarmbees/p/11087049.html
Copyright © 2020-2023  润新知