Qt 配置 FFmpeg

  1. 进入 GitHub,下载带 shared 后缀的那个包即可
    1. 我将下载好的文件夹改名为 FFmpeg
    2. 并将 FFmpeg 文件夹放在 Program Files 目录下
  2. 下载好后将 bin 添加到系统环境中
C:\Program Files\FFmpeg\bin
  1. 若用 QMake 构建项目 在配置文件 pro 中 添加到文件末尾就行
FFMPEG_HOME=C:\Program Files\FFmpegINCLUDEPATH += $$FFMPEG_HOME/includeLIBS += $$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 这个项目的名称改成自己的项目名就行
    # 设置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 文件中即可

    #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();
    }

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/831119.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

stm32f103c8t6学习笔记(学习B站up江科大自化协)-PWR电源控制

PWR简介 PVD可用在电池供电或安全要求比较高的设备&#xff0c;如果供电电压在逐渐下降&#xff0c;在电压过低的情况下可能会导致内外电路出现不确定的错误。为了避免不必要的错误&#xff0c;可以在电源电压过低的情况下&#xff0c;提前发出警告并关闭较为危险的设备 关闭的…

Java发送请求-http+https的

第一步&#xff1a;建议ssl连接对象&#xff0c;信任所有证书 第二步&#xff1a;代码同时支持httphttps 引入源码类 是一个注册器 引入这个类&#xff0c;和它的方法create 注册器&#xff0c;所以对http和https都进行注册&#xff0c;参数为id和item&#xff0c;其中http的…

【C++题解】1039. 求三个数的最大数

问题&#xff1a;1039. 求三个数的最大数 类型&#xff1a;多分支结构 题目描述&#xff1a; 已知有三个不等的数&#xff0c;将其中的最大数找出来。 输入&#xff1a; 输入只有一行&#xff0c;包括3个整数。之间用一个空格分开。 输出&#xff1a; 输出只有一行&#…

uni-app scroll-view隐藏滚动条的小细节 兼容主流浏览器

开端 想写个横向滚动的列表适配浏览器&#xff0c;主要就是隐藏一下滚动条在手机上美观一点。 但是使用uni-app官方文档建议的::-webkit-scrollbar在目标标签时发现没生效。 .scroll-view_H::-webkit-scrollbar{display: none; }解决 F12看了一下&#xff0c;原来编译到浏览…

Day27:阻塞队列、Kafka入门、发送系统通知、显示系统

阻塞队列BlockingQueue BlockingQueue 解决线程通信的问题。阻塞方法:put、take。 生产者消费者模式 生产者:产生数据的线程。消费者:使用数据的线程。 &#xff08;Thread1生产者&#xff0c;Thread2消费者&#xff09; 实现类 ArrayBlockingQueueLinkedBlockingQueuePr…

MariaDB远程访问2点的事情

1、MariaDB库本身的配置 vim /etc/mysql/mariadb.conf.d/50-server.cnf 中的 ....... [mysqld] bind-address 127.0.0.1 ....... 改成 [mysqld] bind-address 0.0.0.0 2、mysql 进到MariaDB中&#xff0c;用户表&#xff0c;用户的的访问主机&#xff0c;得是% ----…

firebase:一款功能强大的Firebase数据库安全漏洞与错误配置检测工具

关于firebase firebase是一款针对Firebase数据库的安全工具&#xff0c;该工具基于Python 3开发&#xff0c;可以帮助广大研究人员针对目标Firebase数据库执行安全漏洞扫描、漏洞测试和错误配置检测等任务。 该工具专为红队研究人员设计&#xff0c;请在获得授权许可后再进行安…

制作一个RISC-V的操作系统十六-系统调用

文章目录 用户态和内核态mstatus设置模式切换核心流程封装代码背景解释代码示例解析解释目的 用户态和内核态 mstatus设置 此时UIE设置为1和MPIE为1&#xff0c;MPP设置为0 代表当前权限允许UIE中断发生&#xff0c;并且在第一个mret后将权限恢复为用户态&#xff0c;同时MIE也…

关于适配器模式这一篇就够了

适配器模式&#xff08;Adapter Pattern&#xff09;是一种结构型设计模式&#xff0c;它允许一个接口与另一个不兼容的接口协同工作。在适配器模式中&#xff0c;我们创建一个适配器类&#xff0c;该类将不兼容的接口转换为客户端所期望的接口&#xff0c;从而使客户端能够使用…

Wpf DataGrid ComboBox 列

遇到的问题 最开始找到的例子要写 Convert, 感觉和 Vue-Elment 的差别比较大后面找到类似与 Vue-Element UI 的写法&#xff0c;开始时数值不更新 关键代码 <DataGridTemplateColumn Header"Digit" Width"100"><DataGridTemplateColumn.CellTem…

保存钉钉群直播回放下载:直播回放下载步骤详解

今天&#xff0c;我们就来拨开云雾&#xff0c;揭开保存钉钉群直播回放的神秘面纱。教会你们如何下载钉钉群直播回放 首先用到的工具我全部打包好了&#xff0c;有需要的自己下载一下 钉钉群直播回放工具下载&#xff1a;https://pan.baidu.com/s/1WVMNGoKcTwR_NDpvFP2O2A?p…

Ubuntu安装Docker和Docker Compose

文章目录 Docker安装Docker Compose安装示例前端Dockerfile示例 Docker官网&#xff1a; https://docs.docker.com/ Docker镜像仓库&#xff1a; https://hub.docker.com/ Docker安装 安装curl(可选) 如果已经安装了curl&#xff0c;则跳过此步骤 # 更新包缓存 sudo apt u…

9、开发基于FemWorkbench的CFD模块

CFD求解器设计针对FreeCAD 背景与动机&#xff1a;SolidWorks不仅提供了FEM功能&#xff0c;还具备CFD功能。为了使FreeCAD拥有类似的功能&#xff0c;考虑在现有的Fem Workbench上添加CFD功能&#xff0c;并重用大部分基础设施。 CFD模拟需求&#xff1a;CFD模拟需要复杂的设…

ubuntu22.04版本操作系统安装docker

安装 Docker 在 Ubuntu 22.04 上与其他 Ubuntu 版本大致相同。以下是在 Ubuntu 22.04 上安装 Docker 的步骤&#xff1a; 1. 更新软件包列表&#xff1a; 确保您的系统已更新到最新的软件包列表。在终端中运行以下命令&#xff1a; sudo apt update2. 安装依赖工具&#xff…

ASP.NET Core日志管理(Serilog)

.net 6 web api项目添加日志(Serilog)管理,将日志输出到控制台、文件、数据库 Nuget安装:Serilog.AspNetCore 1、用于日志输出到控制台Serilog.Formatting.Compact 2、用于日志输出到SQLServer数据库Serilog.Sinks.MSSqlServer 3、用于日志输出到文件Serilog.Sinks.RollingF…

pycharm中文件误删或者误操作,怎么恢复

恢复pycharm中文件误删或者误操作 恢复方法&#xff1a;1.xxxx.py文件误删2.xxxx.py文件内操作 在日常学习或练手时总会有一些迷之操作&#xff0c;一些文件被误删或者一些文件越改越糟&#xff0c;想要恢复操作之前的文件。 恢复方法&#xff1a; 1.选则误删文件的上级目录&…

mysql 数据转excel文件

mysql 数据转excel文件 缘由 为售后拉取数据&#xff0c;用navicat太墨迹了&#xff0c;用python写一个main方法跑一下&#xff1b; 1.抽取共同方法&#xff0c;封装成传入mysql&#xff0c;直接下载成excel&#xff1b; 2.写入所有sql语句&#xff0c;传入参数&#xff1b; 代…

Linux内核深入学习 - 内核同步

目录 内核抢占 同步原语 per-CPU变量 API Per CPU 变量的应用 per CPU 变量在多文件下的用法 原子操作 API 优化和内存屏障 自旋锁 自旋锁 API 函数 读写锁 API RCU 信号量 API 1. 信号量的结构&#xff1a; 2. 初始化函数sema_init 3. 可中断获取信号量函数…

Unity ParticleSystem 入门

概述 在项目的制作过程成&#xff0c;一定少不了粒子系统的使用吧&#xff0c;如果你想在项目粒子效果&#xff0c;那这部分的内容一定不要错过喔&#xff01;我添加了理解和注释更好理解一点&#xff01; 这次的内容比较多&#xff0c;右侧有目录&#xff0c;可以帮助快速导…

渗透之sql盲注

sql盲注&#xff1a;sql盲注意思是我们并不能在web页面中看到具体的信息&#xff0c;我们只能通过输入的语句的真假来判断。从而拿到我们想要的信息。 我们通常使用ascii值来进行盲注。 目录 手动注入&#xff1a; 脚本注入&#xff1a; 使用sqlmap工具注入&#xff1a; 手…