1背景
上面这几篇,是从线程开始,加载视频流。
源码存放位置 github.com/xcyxiner/xp…
2从线程开始读取流
上一次 ffmpeg播放器6(从2-5的实现) 的单独切了一个分支ffmpeg_play_2_5,保留之前的记录。 这次在之前的基础上,继续添加,重新建一个分支 ffmpeg_play_7_11
2.1 先下载类库 ffmpeg
参考之前总结的类库,分别都下载 ffmpeg播放器10(window依赖库以及头文件
2.1.1 ffmpeg 依赖库下载并添加
下载ffmpeg的lgpl的压缩包后解压后如下所示
include 直接添加就行,lib下面只要.lib的,以及bin文件 在项目中创建文件夹3rd,复制上面的include文件,创建bin/msvc文件夹和,lib/msvc文件夹
最终目录如下
├─bin
│ └─msvc
├─include
│ ├─libavcodec
│ ├─libavdevice
│ ├─libavfilter
│ ├─libavformat
│ ├─libavutil
│ ├─libswresample
│ └─libswscale
└─lib
└─msvc
将解压后的ffmpeg中的bin文件夹内的所有复制到bin/msvc下面
将解压后的ffmpeg中的lib文件夹内.lib的文件复制到lib/msvc下面
查看原来的打包是不是用了msvc,才发现一直用的是mingw,这里就需要再次添加msvc了,毕竟一直是拿msvc来做参考的。
2.1.2 qt ide 添加msvc 编译器
在卸载程序点,点击qt,然后修改,然后在弹出来的界面中选择如下
这里勾选 6.7.3下面的 MSVC 2019 64-bit(暂时只装了vs2019)
安装完成后,打开qt时选中6.7.3
选择对应.pro打开后,点击到项目,禁用到其他的编辑器,重新添加一个msvc的编译器
点上面的管理构建套件
可以把msvc的设为默认的
2.1.3 qmake添加ffmpeg的配置
qmake可以参考这里帮助里的qmake 教程 doc.qt.io/qt-6/zh/qma…
双击打开 xplayer.pro ,添加如下配置
INCLUDEPATH +=$$PWD/3rd/include
win32 {
win32-msvc{
LIBS += -lavformat \
-lavdevice \
-lavcodec \
-lswresample \
-lswscale \
-lavutil \
DESTDIR = $$PWD/3rd/bin/msvc
LIBS += -L$$PWD/3rd/lib/msvc
}
}
如果没运行成功,可以试着取消再激活套件
最终的效果就是能正常运行成功
最终的代码 github.com/xcyxiner/xp…