Windows下FFMEPG编译
FFMPEG在Windows下编译(MIMO431)
/***************************************************************************************************************************************************************************************************************************************************
第一次编辑:2021-02-24 10:55 原文编辑
第二次编辑:2021-02-24 16:05 第一次修改**
第三次编辑:2021-02-25 13:09 第二次修改
***************************************************************************************************************************************************************************************************************************************************/
1.参考链接
B站乔红---Redknot
https://www.bilibili.com/video/BV17i4y1G7WA
二次编辑:
本文编译结果不会生成lib文件(Windows平台开发使用),后续进行添加
三次编辑:
没注意,lib文件实际上在bin里面,0.0
1.下载准备
X264
https://code.videolan.org/videolan/x264/-/archive/master/x264-master.tar.bz2
FFmpeg-4.3.2
1.官网下载:http://ffmpeg.org/releases/ffmpeg-4.3.2.tar.xz
2.Git下载:https://gitee.com/mirrors/ffmpeg.git
MSYS2
https://repo.msys2.org/distrib/x86_64/msys2-x86_64-20210215.exe
2.更换为清华源
#全部位开头添加
nano /etc/pacman.d/mirrorlist.mingw32
Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/i686
nano /etc/pacman.d/mirrorlist.mingw64
Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/x86_64
nano /etc/pacman.d/mirrorlist.msys
Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/msys/$arch
#刷新
pacman -Sy
3.MSYS下环境配置(MINGW64)
1.安装mingw核心模块
pacman -S mingw-w64-x86_64-toolchain
2.make 相关
pacman -S base-devel
3.安装nasm
pacman -S nasm
4.build.sh
basepath=$(cd `dirname $0`;pwd)
echo ${basepath}
cd ${basepath}/x264-master
pwd
./configure --prefix=${basepath}/x264_install --enable-static --enable-win32thread
make -j8
make install
cd ${basepath}/ffmpeg
pwd
./configure --prefix=${basepath}/ffmpeg432_install --enable-static --enable-shared --enable-libx264 --enable-gpl \
--extra-cflags=-I${basepath}/x264_install/include \
--extra-ldflags=-L${basepath}/x264_install/lib
make -j8
make install
5.编译
将FFmpeg包,X264包,build.sh放到用户目录下,即软件安装目录/home/mimo431
个人示例:F:\Software\msys\home\mimo431\bianyi

根据自己的文件夹名称修改shell脚本内容
打开msys窗口,选择64位

sh build.sh

编译费时较长,最后会生成x264_install和ffmpeg432_install两个文件夹,里面有头文件和库文件。

编译结束。
Windows下FFMEPG编译的更多相关文章
- 原创 C++应用程序在Windows下的编译、链接:第一部分 概述
本文是对C++应用程序在Windows下的编译.链接的深入理解和分析,文章的目录如下: 我们先看第一章概述部分. 1概述 1.1编译工具简介 cl.exe是windows平台下的编译器,link.ex ...
- 【FFmpeg】Windows下FFmpeg编译
由于FFmpeg是基于Linux开发的开源项目,源代码和Windows下最常见的Visual Studio提供的C/C++编译器不兼容,因此它不能使用MSVC++编译,需要在Windows下配置一个类 ...
- C++应用程序在Windows下的编译、链接(一)概述
C++应用程序在Windows下的编译.链接(一)概述 本文是对C++应用程序在Windows下的编译.链接的深入理解和分析,文章的目录如下: 我们先看第一章概述部分. 1概述 1.1编译工具简介 c ...
- ACE在windows下的编译及配置(VS2010)
ACE在windows下的编译及配置(VS2010) 分类: -[小西南]- 2013-08-06 16:17 2354人阅读 评论( ...
- [转]QGis2.9在windows下的编译以及二次开发包下载
今天心血来潮,将QGis在github上的代码更新后,又编译了一下.留意到源代码包里面的INSTALL文件有更新,于是本次编译完全基于官方的编译说明.编译过程非常顺利,除了在CMake的第一次conf ...
- windows下rabbitmq-c编译(带openssl、无需MinGW)
因为项目原因,需要使用到rabbitmq的c客户端库.首先,参见上一篇windows下openssl编译,如果已经使用cmake编译过了,则先delete cache(File-Delete Cach ...
- Windows下PythonQt编译(vs2015+Qt5.11.2+PythonQt 3.2)
后记: 由于自己low,没有下载罪行的python3.2导致编译上遇到种种问题,后文可以参考,建议看: <Windows7 VS2015 下编译 PythonQt3.2> https:// ...
- Windows下PythonQt编译(vs2015+Qt5.11.2+PythonQt 3.2)探索
时间:2018年10月20日 笔者最近在做Qt方面的开发工作,需用到脚本程序对程序内部进行扩展,就很自然的想到了PythonQt,下面介绍PythonQt在Windows下的的安装编译心得,水平有限, ...
- 设置 Quick-Cocos2d-x 在 Windows 下的编译环境
http://cn.cocos2d-x.org/tutorial/show?id=1304 设置 Quick-Cocos2d-x 在 Windows 下的编译环境 Liao Yulei2014-08- ...
随机推荐
- 写给开发人员的实用密码学(七)—— 非对称密钥加密算法 RSA/ECC
本文部分内容翻译自 Practical-Cryptography-for-Developers-Book,笔者补充了密码学历史以及 openssl 命令示例,并重写了 RSA/ECC 算法原理.代码示 ...
- Linux kernel serial_ir_init_module()释放后重利用漏洞
受影响系统:Linux kernel < 5.1.6描述:-------------------------------------------------------------------- ...
- 运营商的三大数据域——B域,O域,M域
O域(运营域).B域(业务域).M域(管理域)特指电信行业大数据领域的三大数据域. B域(业务域)= business support system的数据域, O域(运营域)= operation s ...
- 网关中间件-Nginx(二)
网关中间件-Nginx(一) 第一部分我们主要介绍如下几点: 1.nginx的基本概念 2.nginx结合业务场景实现负载均衡 3.常见问题的举例 这一部分主要介绍Nginx中限流,缓存,动静分离,以 ...
- Windows 7/8 64位系统 不能注册32位dll 文件的解决方案
这几天碰到一个问题,运行一个易语言开发的软件出现以下错误.我的系统是 Windows7 64 位 专业版.在系统盘 windows/system32 下查找 dm.dll.但是没有这个文件.于是我到 ...
- CF1487G String Counting (容斥计数)
传送门 考虑$c[i]>n/3$这个关键条件!最多有2个字母数量超过$n/3$! 没有奇数回文?长度大于3的回文串中间一定是长度为3的回文串,所以合法串一定没有长度=3的回文,也就是$a[i]\ ...
- springboot项目yml中使用中文注释报错的解决方法1
启动springboot项目时报错:/application.yml.....这大致就是说application.yml有问题,那么目前我所知道的大致两种情况会报错,第一种是yml格式有问题,要注意缩 ...
- springMVC的执行流程?
springMVC是由dispatchservlet为核心的分层控制框架.首先客户端发出一个请求web服务器解析请求url并去匹配dispatchservlet的映射url,如果匹配上就将这个请求放入 ...
- ISR、OSR、AR 是什么?
ISR:In-Sync Replicas 副本同步队列 OSR:Out-of-Sync Replicas AR:Assigned Replicas 所有副本 ISR是由leader维护,followe ...
- Java BlockingQueue是什么?
Java BlockingQueue是一个并发集合util包的一部分.BlockingQueue队列是一种支持操作,它等待元素变得可用时来检索,同样等待空间可用时来存储元素.