Qt 配置 FFmpeg

  1. 进入 GitHub,下载带 shared 后缀的那个包即可
    1. 我将下载好的文件夹改名为 FFmpeg
    2. 并将 FFmpeg 文件夹放在 Program Files 目录下
  2. 下载好后将 bin 添加到系统环境中
sh 复制代码
C:\Program Files\FFmpeg\bin
  1. 若用 QMake 构建项目 在配置文件 pro 中 添加到文件末尾就行
cmake 复制代码
FFMPEG_HOME=C:\Program Files\FFmpeg

INCLUDEPATH += $$FFMPEG_HOME/include

LIBS += $$FFMPEG_HOME/lib/avcodec.lib  \
        -L$$FFMPEG_HOME/lib/avdevice.lib  \
    -L$$FFMPEG_HOME/lib/avfilter.lib  \
    -L$$FFMPEG_HOME/lib/avformat.lib  \
    -L$$FFMPEG_HOME/lib/lib/avutil.lib  \
    -L$$FFMPEG_HOME/lib/swresample.lib  \
    -L$$FFMPEG_HOME/lib/swscale.lib  \
  • 若用CMake构建项目 在配置文件CMakeList.txt 中 添加到文件末尾就行

    • 注意事项 FFmpegQt 这个项目的名称改成自己的项目名就行
    cma 复制代码
    # 设置FFmpeg的安装路径
    set(FFMPEG_HOME "C:/Program Files/FFmpeg")
    
    # 添加FFmpeg的头文件路径
    include_directories(${FFMPEG_HOME}/include)
    
    # 获取FFmpeg相关的链接库
    file(GLOB FFMPEG_LIBRARIES "${FFMPEG_HOME}/lib/*.lib")
    
    # 添加FFmpeg相关的链接库
    target_link_libraries(FFmpegQt PRIVATE ${FFMPEG_LIBRARIES})
  • 来一段测试代码 将代码放入 main.cpp 文件中即可

    cpp 复制代码
    #include "Widget.h"
    
    #include <QApplication>
    #include <QDebug>
    
    // 需要使用C来对C++进行支持
    // 注意注意注意,这里的C是大写的!不是小写的!小写会报错!
    extern "C"
    {
    //avcodec:编解码(最重要的库)
    #include <libavcodec/avcodec.h>
        //avformat:封装格式处理
    #include <libavformat/avformat.h>
        //swscale:视频像素数据格式转换
    #include <libswscale/swscale.h>
        //avdevice:各种设备的输入输出
    #include <libavdevice/avdevice.h>
        //avutil:工具库(大部分库都需要这个库的支持)
    #include <libavutil/avutil.h>
    }
    
    
    int main(int argc, char *argv[])
    {
        QApplication a(argc, argv);
        Widget w;
        w.show();
    
        // 测试avcodec版本
        qDebug() << "ffmpeg版本信息:" << av_version_info();
    
        return a.exec();
    }
相关推荐
Evand J2 分钟前
【MATLAB例程】AOA与TDOA混合定位例程,适用于三维环境、4个锚点的情况,附下载链接
开发语言·matlab
机器视觉知识推荐、就业指导2 分钟前
Qt 与Halcon联合开发八: 结合Qt与Halcon实现海康相机采图显示(附源码)
开发语言·数码相机·qt
mit6.82430 分钟前
[vroom] docs | 输入与问题定义 | 任务与运输工具 | json
c++·自动驾驶
Heartoxx30 分钟前
c语言-指针与一维数组
c语言·开发语言·算法
hqxstudying32 分钟前
Java创建型模式---原型模式
java·开发语言·设计模式·代码规范
charlie1145141911 小时前
如何使用Qt创建一个浮在MainWindow上的滑动小Panel
开发语言·c++·qt·界面设计
神仙别闹1 小时前
基于Python实现LSTM对股票走势的预测
开发语言·python·lstm
chao_7892 小时前
回溯题解——子集【LeetCode】二进制枚举法
开发语言·数据结构·python·算法·leetcode
cpp_learners4 小时前
QML与C++交互之创建自定义对象
c++·qt·qml
尘世闲鱼4 小时前
解数独(C++版本)
开发语言·c++·算法·解数独