音视频环境搭建

整体流程参考:

Windows 10开发环境搭建

这里记录一下期间的遇到的问题:

  1. 下载的ffmpeg,将ffmpeg的bin目录添加到系统环境变量,然后将SDL的dll动态库拷贝到ffmpeg的bin目录下或将其所在的目录也添加到环境变量,不一定非要将相关文件拷贝到Windows目录下。而且SysWOW64目录是Windows下64位系统用于适配32位动态库的目录,如果ffmpeg是64位的,那么将动态库放到SysWOW64中根本毫无意义。所以最好还是添加环境变量,把bin目录拷贝到C:/Windows目录下不是很主流的做法。

  2. QT中的msvc编译器,必须要安装对应版本的VS才可以正常使用,否则即使安装了sdk和mscv也没用。而且还要注意编译器和调试器的选择,如果选择不对也会导致无法使用。

  3. 注意,在使用QT调用ffmpeg的api时,需要将ffmpeg-7.0文件夹放到与.c/.cpp文件同一目录下。

  4. 在运行msys2-mingw64时,不能直接双击,要在命令行中通过:msys2_shell.cmd -mingw64的方式打开,详情参考:which: no cl in… help needed · Issue #92 · microsoft/FFmpegInterop (github.com)。

  5. 编译ffmpeg时,要仔细对比路径的准确性,很容易坑。至于 pkg-config无法找到的情况,直接将其对应的lib/pkgconfig添加到PKG_CONFIG_PATH环境变量中参考:libfdk-aac 找不到-CSDN博客。

  6. ffmpeg编译好了之后,需要将其lib目录下的.def文件通过lib /machine:X64 /def:libxxx.def命令,生成对应的.lib文件(64位),这样才能在QT中调用ffmpeg的api。

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

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

相关文章

huawei USG6001v1学习---防火墙相关知识(2)

目录 1.安全策略 2.防火墙的状态检测和会话表技术 3.FTP 4.用户认证 5.认证策略 1.安全策略 传统包过滤技术 --- 其本质就是ACL访问控制列表,根据数据包的特征进行过滤,对比规则, 执行对应的动作; 这里数据包的特征 --- …

题解|2024暑期杭电多校01

【原文链接】 1001.循环位移 字符串 题目大意 给定两个字符串 A , B A,B A,B 。 定义 [ A ] [A] [A] 为字符串 A A A 的循环位移任意次可以得到的所有字符串的集合。 求 B B B 包含 [ A ] [A] [A] 中元素的个数。 解题思路 利用字符串Hash快速匹配。 将 [ A ] [A] …

switch可应用于哪些数据类型说说java中的数组和多维数组

switch可以用于哪些数据类型? switch是一种条件控制语句,根据不同的条件执行不同的代码块。switch使用一个或者多个不同的值来匹配某个表达式的值,并且根据结果来匹配不同的值。switch的语句基本格式 switch(expression&#xf…

Web安全:未验证的重定向和转发.

Web安全:未验证的重定向和转发. 未验证的重定向和转发漏洞是一种常见的Web安全漏洞,它允许攻击者将用户重定向到一个恶意的URL,而不是预期的安全URL。这种漏洞通常发生在应用程序处理重定向和转发请求时,未能对目标URL进行适当的…

探索 PDF 转 Markdown 的项目:MinerU 和 pdfParser

pdfParser 项目是在MinerU 项目 的基础上开发的,增加了表格识别功能 MinerU:综合数据提取工具 MinerU 项目 是一款一站式、开源、高质量的数据提取工具,支持 PDF、网页和电子书的提取。其 Magic-PDF 模块可以将 PDF 转换为 Markdown 格式&a…

display: flex 和 justify-content: center 强大居中

你还在为居中而烦恼吗,水平居中多个元素、创建响应式布局、垂直和水平同时居中内容。它,display: flex 和 justify-content: center 都可以完成! display: flex:将元素定义为flex容器 justify-content:定义项目在主轴…

el-popover嵌套select弹窗点击实现自定义关闭

需求 el-popover弹窗内嵌套下拉选择框,点击el-popover弹出外部区域需关闭弹窗,点击查询、重置需关闭弹窗, 实现 根据需求要自定义弹窗的关闭和显示,首先想到的是visible属性,在实现过程中经过反复的测验&#xff0…

区块链技术实现数字电网内数据可信共享 |《超话区块链》直播预告

随着全球电力市场朝着构建“SmartGrid”和“IntelliGrid”的目标发展,国内电力公司也提出了构建“数字电网”的愿景。清大科越推出新型电力系统区块链服务平台,通过便捷的建链、上链、用链及治链能力,有效解决数字电网各主体间数据共享的信任…

为什么要从C语言开始编程

在开始前刚好我有一些资料,是我根据网友给的问题精心整理了一份「C语言的资料从专业入门到高级教程」, 点个关注在评论区回复“888”之后私信回复“888”,全部无偿共享给大家!!!很多小伙伴在入门编程时。都…

docker的学习(一):docker的基本概念和命令

简介 docker的学习,基本概念,以及镜像命令和容器命令的使用 docker docker的基本概念 一次镜像,处处运行。 在部署程序的过程中,往往是很繁琐的,要保证运行的环境,软件的版本,配置文件&…

机器学习中的数据分析

数据分析是一个涉及收集、清洗、转换、建模和解释数据的过程,目的是揭示模式、趋势和结论,以支持决策制定。以下是一个简化版的数据分析教程,分为几个关键步骤: 1. 定义问题 明确你希望通过数据分析解决的问题。这可能涉及到商业…

安装 Maven

安装 Maven 的步骤: 1. 访问 Maven 官方网站: https://maven.apache.org/download.cgi 2. 下载 Maven 的二进制文件 3. 解压下载的文件到希望安装的目录 4. 将 Maven 的 bin 目录添加到您的系统环境变量 PATH 中(配置环境变量) 这个步骤可…

Jupyter notebook如何快速的插入一张图片?如何控制插入图片的缩放、靠左展示(ChatGPT)

在Jupyter Notebook中,你可以使用Markdown语法快速插入图片,并且可以通过HTML标签来控制图片的展示方式和缩放。 注意:以下所有操作都有一个前提,即选择Cell-CellType-Markdown 1. 快速插入图片 要在Jupyter Notebook中插入图…

澎湃算力 玩转AI 华为昇腾AI开发板——香橙派OriengePi AiPro边缘计算案例评测

澎湃算力 玩转AI 华为昇腾AI开发板 香橙派OriengePi AiPro 边缘计算案例评测 人工智能(AI)技术正以前所未有的速度改变着我们的生活、工作乃至整个社会的面貌。作为推动这一变革的关键力量,边缘计算与AI技术的深度融合正成为行业发展的新趋势…

数据仓库的一致性维度

一致性维度的定义: 一致性维度是指在数据仓库中,具有相同属性和含义的维度在不同的事实表中保持一致。它确保了通过不同事实表进行查询和分析时,维度数据的一致性和准确性。 一致性维度的作用: 数据一致性:一致性维度…

【git】设置github代理

记录git的一些操作。主要是创建分支和如何配置全局代理、github代理。git 本地创建分支并提交 ChatGPT 在 Git 中创建一个本地分支并提交更改可以通过以下步骤完成: 打开终端:首先,打开你的命令行终端。 切换到你的项目目录:使用 cd 命令切换到包含你项目的目录。 bash…

php反序列化练习题

Demo1 <?php error_reporting(0); //关闭错误报告class happy{ protected $filedemo1.php; public function __construct($file){ $this->file$file; } function __destruct(){ if(!empty($this->file)){if(strchr($this->file,"\\")false &&…

Redis持久化(AOF和RDB)

目录 前言 一.RDB 1.1手动执行 1.2自动执行 二.AOF 2.1重写机制 三.混合持久化 Redis的学习专栏&#xff1a;http://t.csdnimg.cn/a8cvV 前言 持久化&#xff0c;在之前&#xff0c;我们接触这个词汇是在mysql数据库当中的事务四大特性里。 持久性&#xff1a;指一旦事…

Linux网络编程之UDP

文章目录 Linux网络编程之UDP1、端口号2、端口号和进程ID的区别3、重新认识网络通讯过程4、UDP协议的简单认识5、网络字节序6、socket编程接口6.1、socket常见接口6.2、sockaddr通用地址结构 7、简单的UDP网络程序7.1、服务器响应程序7.2、服务器执行命令行7.3、服务器英语单词…

vue中v-if和v-for

vue中v-if和v-for Vue 官方建议不要在同一个元素上同时使用 v-if 和 v-for 指令&#xff0c;主要有以下几个原因&#xff1a; 性能问题&#xff1a; 当 v-if 和 v-for 一起使用时&#xff0c;Vue 在每次渲染时都需要先执行循环&#xff0c;然后再对每个元素进行条件判断。这可能…