如何将ffmpeg在windows编译和使用
由于FFMpeg是基于Linux开发的开源项目,源代码和Windows下最常见的Visual Studio提供的C/C++编译器不兼容,因此它不能使用MSVC++编译。要想使用FFMpeg,最先要解决的问题就是在Windows下配置一个类似Linux的编译环境,将FFMpeg编译为二进制库以后,再利用其进行进一步开发。
MSVC++并不严格的遵循C标准,所以整个编译过程必须使用MSys+MinGW系统(关于这两个是什么,自己google吧)来完成。如果选择编译动态链接库(dll),这些库将和其他的动态链接库一样在使用上没什么差别,可以使用MSVC++来链接这些库到自己的程序,只有这种情况下MSVC++是被支持的。
FFmpeg在Windows系统下的编译过程如下:
大体步骤如下:
1. 配置编译环境
2. 下载FFMPEG的代码
3. 编译,获取FFMPEG库(头文件,lib,和DLL)
4. 在VC下配置,测试
具体步骤如下:
1. 配置编译环境
正如开头所说FFMpeg是不直接用VC编译的,所以需要MSys+MinGW系统来编译。所谓的配置环境也就是配置MSys+MinGW系统。老实说这个步骤是整个步骤最麻烦,且最容易错的。所以一定要没搞错了。
配置需要的文件都在http://sourceforge.net/project/showfiles.php?group_id=2435中。可能会在该改目录下无法找到。这个会有两个可能,一种就是对应要下载的压缩包有了新的版本,这个不用担心。直接用新的版本就好。另一种就是在上面所说的网站没有,但是在点开某个Package的时候,新弹出的窗口有。比如:要下载gcc-core--20060117-3.tar.gz gcc-g++-3.4.5-20060117-3.tar.gz 这些是在上面网址的网页下的 点开GCC Version 3有。 如下图:
打开上面的网址,会有类似下图的列表框。
点击GCC Version 3,出现下面的页面。
注意:下载最好下载i386版本的,另外一个或许也可以,但是还是不要给自己添麻烦。
1)安装MSys
下载文件:
bash-3.1-MSYS--snapshot.tar.bz2
msysCORE-1.0.11-20080826.tar.gz
(可能会有版本变化,以下同)
解压msysCORE-1.0.11-20080826.tar.gz,比如解压到X:\msys(以下内容都使用该路径描述,X为你安装的盘符)。
解压bash-3.1-MSYS-1.0.11-snapshot.tar.bz2,产生一个名为bash-3.1的目录,在该目录下有一个子目录名为bin,其他的目录不需要关心。复制bin目录中的所有文件到D:\msys\bin,提示是否要覆盖sh.exe的时候,选择是。
到“D:\msys\postinstall”目录下执行pi.bat,在出现的提示中输入n回车后(这个不搞错了),按任意键退出即可。
一丘
1:02
如何将ffmpeg在windows编译和使用相关推荐
- FFmpeg在Windows系统下的编译过程
由于FFMpeg是基于Linux开发的开源项目,源代码和Windows下最常见的Visual Studio提供的C/C++编译器不兼容,因此它不能使用MSVC++编译.要想使用FFMpeg,最先要解决 ...
- windows编译ffmpeg,支持h264,qsv,aac
windows下ffmpeg的编译环境,windows下编译ffmpeg. 在ffmpeg源码目录下新建文件夹3rdparty,3rdparty里面创建include和lib两个文件夹,分别存放依赖编 ...
- ffmpeg在windows下的编译
From: http://blog.csdn.net/kidleaf2/article/details/7925283 1. 下载编译环境MinGW+Msys,地址是:http://sourcefo ...
- ffmpeg 配置与编译
本文标签(Tag) ffmpeg 配置 编译 1 ffmpeg介绍 ffmpeg是音视频的分离,转换,编码解码及流媒体的完全解决方案,其中最重要的就是libavcodec库.它被mplayer或者 ...
- FFmpeg 集成 x265 编译及解码
x265 是一个免费的软件库和应用程序,用于将视频流编码为 H.265/MPEG-H HEVC 压缩格式,并在 GNU GPL 条款下发布. FFmpeg 为了支持 H.265 编.解码可以集成 x2 ...
- 【Android 音视频开发打怪升级:FFmpeg音视频编解码篇】一、FFmpeg so库编译
转自:https://juejin.im/post/5e130df55188253a8b42ebac 目录 一.Android音视频硬解码篇: 1,音视频基础知识 2,音视频硬解码流程:封装基础解码框 ...
- 支持HEVC/H265 RTMP接收的FFMPEG/FFPLAY WINDOWS版本
本文镜像:https://linkpi.cn/archives/1249 本文链接:https://blog.csdn.net/weixin_45326556/article/details/1111 ...
- FFmpeg学习之八(FFmpeg源码编译)
FFmpeg学习之八(FFmpeg源码编译) Mac下 FFmpeg源码编译 安装 1. 使用终端安装FFmpeg 2. 手动编译 2.1 编译环境 - Xcode 2.2 安装依赖库 2.3 安装F ...
- ffmpeg 如何配置编译
这么长的文章,是转来的 : ) 1 ffmpeg介绍 ffmpeg是音视频的分离,转换,编码解码及流媒体的完全解决方案,其中最重要的就是libavcodec库.它被mplayer或者xine使用作为解 ...
最新文章
- 转】windows下使用批处理脚本实现多个版本的JDK切换
- 达达O2O后台架构演进实践:从0到4000高并发请求背后的努力!
- 雷军坚持了 10 年的东西,现在彻底凉了
- Linux IO多路复用之epoll网络编程(含源码)
- linux 磁盘维护 swapon swapoff 简介
- java swing控件大全_java swing 组件大全(新手快进)
- html的关于上一行对齐,html – 如何在一行上对齐我的所有li?
- Codeforces Round #499 (Div. 2) Problem-A-Stages(水题纠错)
- 【面向对象】基本概念
- 单元测试(三)基本使用
- 前端填空题_一年前端面试总结|入职字节|2020.8
- 云存储软件行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
- Daily Scrum10 11.14
- MAX DotNet 透明界面效果代码实例 转自CG++原帖
- InstallShield使用完全教程
- Unity : Timeout while trying to pause the Unity Engine.应用闪退问题修复
- 「Python网络编程」如何让蔡徐坤同时唱跳rap篮球/初识多线程(二)
- 使用sql服务器发送贺卡_发送免费电子贺卡的最佳网站
- 慧择业务布局成效明显,戴维斯双击可期
- 最新易发卡PJ免授权版源码