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();
    }
相关推荐
晴天的雨.9921 小时前
【C++算法】和为s的两个数
开发语言·数据结构·c++·算法
IvanCodes6 小时前
Python 数据处理(十三):JSON、CSV 与数据序列化
开发语言·python
aramae7 小时前
MySQL复合查询(8)
java·c语言·开发语言·后端·算法
qq_25183645710 小时前
springboot vue3 开发实现 拼豆管理系统
java·开发语言·ai编程
郑州光合科技余经理11 小时前
同城外卖小程序开发:下单成功后,后台导出能不能对上用户端状态
开发语言·前端·git·后端·uni-app·php·ai编程
知识分享小能手11 小时前
C++ 学习教程,从入门到精通,C++ 入门知识 — 完整知识点(1)
开发语言·c++·学习
qq_1998868711 小时前
第8板块·第2节:统一内存的高级特性与性能调优
c++·人工智能·gpu算力·cuda
+VX:Fegn089511 小时前
计算机毕业设计|基于springboot + vue旅游管理系统(源码+数据库+文档)
java·开发语言·vue.js·spring boot·课程设计
阿里嘎多学长12 小时前
2026-09-20 GitHub 热点项目精选
开发语言·程序员·github·代码托管
2401_8390805412 小时前
C++常见八股
数据结构·c++·算法