Qt 配置 FFmpeg

server/2024/9/23 3:43:06/
  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.ppmy.cn/server/27941.html

相关文章

前端安全:XSS和CSRF攻击的防御策略

在前端开发中&#xff0c;确保应用的安全性是至关重要的任务之一。跨站脚本攻击&#xff08;XSS&#xff09;和跨站请求伪造&#xff08;CSRF&#xff09;是两种常见的安全威胁&#xff0c;它们可以严重危害网站的安全和用户的隐私。以下是针对这两种攻击的防御策略&#xff1a…

11、Flink 的 Keyed State 详解

1.Keyed DataStream 使用 keyed state&#xff0c;首先需要为DataStream指定 key&#xff08;主键&#xff09;&#xff1b;这个 key 用于状态分区&#xff08;数据流中的 Record 也会被分区&#xff09;可以使用 DataStream 中 Java/Scala API 的 keyBy(KeySelector) 或者是 …

陪同口译VR情景实训教学系统开发

陪同口译VR情景实训教学系统应用教学系统是一款针对口译培训而设计的教学软件&#xff0c;它利用虚拟现实技术&#xff0c;为学生提供身临其境的口译模拟场景&#xff0c;帮助他们提高口译技能和实际应用能力。 一、口译模拟场景&#xff1a; 该系统包含多种不同类型的口译场景…

附录3-小程序常用事件

目录 1 点击事件 tap 2 文本框输入事件 input 3 状态改变事件 change 4 下拉刷新事件 onPullDownRefresh() 5 上拉触底事件 onReachBottom() 1 点击事件 tap 2 文本框输入事件 input 可以使用 e.detail.value 打印出当前文本框的值 我现在在文本框中依次输入12345&…

一键PDF水印添加工具

一键PDF水印添加工具 引言优点1. 精准定位与灵活布局2. 自由旋转与透明度调控3. 精细化页码选择4. 全方位自定义水印内容5. 无缝整合工作流程 功能详解结语工具示意图【工具链接】 引言 PDF作为最常用的文档格式之一&#xff0c;其安全性和版权保护显得尤为重要。今天&#xff…

微软如何打造数字零售力航母系列科普05 - Azure中计算机视觉的视觉指南

Azure中计算机视觉的视觉指南 什么是计算机视觉&#xff1f;如何使用Microsoft Azure将计算机视觉功能集成到应用程序和工作流中&#xff1f; 作者&#xff1a;Nitya Narasimhan 编辑&#xff1a;数字化营销工兵 •11分钟阅读 什么是计算机视觉&#xff1f;如何使用Microso…

【STM32F407+CUBEMX+FreeRTOS+lwIP netconn UDP TCP记录】

STM32F407CUBEMXFreeRTOSlwIP netconn UDP TCP记录 注意UDPUDP1UDP2 TCPTCP clientTCP server图片 注意 1、超时 #include “lwipopts.h” #define LWIP_SO_RCVTIMEO 12、先保证能ping通 3、关于工程创建可参考 【STM32F407CUBEMXFreeRTOSlwIP之UDP记录】 4、…

Cisco IOS XE Web UI 权限提升漏洞复现(CVE-2023-20198)

0x01 产品简介 Web UI 是一种基于GUI的嵌入式系统管理工具,能够提供系统配置、简化系统部署和可管理性以及增强用户体验。它带有默认映像,因此无需在系统上启用任何内容或安装任何许可证。Web UI 可用于构建配置以及监控系统和排除系统故障,而无需CLI专业知识。 0x02 漏洞…