Qt视频框架qtav构建编译使用

一:Qtav

1.首先说下:如果你的环境是windows,你可以到下面网站看看有没有你的环境,如果有你就可以直接使用,没必要重新编译构建。


直接下载作者编译好的,执行里面的脚本

2.我的环境是vs2013+qt5.7  环境恰恰和作者提供的环境不一样GG。我试试直接使用发现了很多编译链接问题,没办法重新编译qtav。


qtav的编译过程其实很简单:

  1. 下载 http://sourceforge.net/projects/qtav/files/depends/QtAV-depends-windows-x86%2Bx64.7z/download
  2. 下载后将里面的lib和include 下的文件放到你的qt环境中,我的qt目录是 C:\Qt\Qt5.7.0\5.7\msvc2013\ include里的放到该目录的include下,lib里的放到lib下。
  3. 下载qtav源码 ,我用git 
    git clone https://github.com/wang-bin/QtAV.git
    git submodule update --init
  4. 打开你git clone 下的目录 D:\QtAV 打开QtAV.pro

5.单击右键,执行qmake。

编译完成后:打开编译生成的文件夹执行,sdk_install.bat 这个脚本会把编译生成的lib文件和头文件放到我们的环境中。

二:使用qtav

使用的方法简单

1.修改pro文件

QT += avwidgets

2.主文件包含头文件

#include <QtAV>
#include <QtAVWidgets>

3.小的测试例子:

QFile vidfile("D:\\2518.avi");

          if (!vidfile.open(QIODevice::ReadOnly))
              return 1;

    AVPlayer player[2];
        WidgetRenderer renderer[2];

           renderer[0].setParent(&w);
          renderer[0].show();
          renderer[0].widget()->setWindowTitle(QString::fromLatin1("F:\\1.avi"));
          renderer[1].show();
          renderer[1].widget()->setWindowTitle(QString::fromLatin1("Test QBuffer. Play <=1M video from memory"));
          player[0].addVideoRenderer(&renderer[0]);
          player[1].addVideoRenderer(&renderer[1]);

          QByteArray data = vidfile.read(1024*1024);
          vidfile.seek(0);
          QBuffer buf(&data);
          if (buf.open(QIODevice::ReadOnly)) {
              player[1].setIODevice(&buf);
          }
          player[0].setIODevice(&vidfile);
          player[0].play();
          player[1].play();

特别提醒:在播放的时候需要dll文件,自己拷贝到里面!。

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值