由于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编译和使用相关推荐

  1. FFmpeg在Windows系统下的编译过程

    由于FFMpeg是基于Linux开发的开源项目,源代码和Windows下最常见的Visual Studio提供的C/C++编译器不兼容,因此它不能使用MSVC++编译.要想使用FFMpeg,最先要解决 ...

  2. windows编译ffmpeg,支持h264,qsv,aac

    windows下ffmpeg的编译环境,windows下编译ffmpeg. 在ffmpeg源码目录下新建文件夹3rdparty,3rdparty里面创建include和lib两个文件夹,分别存放依赖编 ...

  3. ffmpeg在windows下的编译

    From: http://blog.csdn.net/kidleaf2/article/details/7925283 1.  下载编译环境MinGW+Msys,地址是:http://sourcefo ...

  4. ffmpeg 配置与编译

    本文标签(Tag) ffmpeg 配置 编译 1 ffmpeg介绍   ffmpeg是音视频的分离,转换,编码解码及流媒体的完全解决方案,其中最重要的就是libavcodec库.它被mplayer或者 ...

  5. FFmpeg 集成 x265 编译及解码

    x265 是一个免费的软件库和应用程序,用于将视频流编码为 H.265/MPEG-H HEVC 压缩格式,并在 GNU GPL 条款下发布. FFmpeg 为了支持 H.265 编.解码可以集成 x2 ...

  6. 【Android 音视频开发打怪升级:FFmpeg音视频编解码篇】一、FFmpeg so库编译

    转自:https://juejin.im/post/5e130df55188253a8b42ebac 目录 一.Android音视频硬解码篇: 1,音视频基础知识 2,音视频硬解码流程:封装基础解码框 ...

  7. 支持HEVC/H265 RTMP接收的FFMPEG/FFPLAY WINDOWS版本

    本文镜像:https://linkpi.cn/archives/1249 本文链接:https://blog.csdn.net/weixin_45326556/article/details/1111 ...

  8. FFmpeg学习之八(FFmpeg源码编译)

    FFmpeg学习之八(FFmpeg源码编译) Mac下 FFmpeg源码编译 安装 1. 使用终端安装FFmpeg 2. 手动编译 2.1 编译环境 - Xcode 2.2 安装依赖库 2.3 安装F ...

  9. ffmpeg 如何配置编译

    这么长的文章,是转来的 : ) 1 ffmpeg介绍 ffmpeg是音视频的分离,转换,编码解码及流媒体的完全解决方案,其中最重要的就是libavcodec库.它被mplayer或者xine使用作为解 ...

最新文章

  1. 转】windows下使用批处理脚本实现多个版本的JDK切换
  2. 达达O2O后台架构演进实践:从0到4000高并发请求背后的努力!
  3. 雷军坚持了 10 年的东西,现在彻底凉了
  4. Linux IO多路复用之epoll网络编程(含源码)
  5. linux 磁盘维护 swapon swapoff 简介
  6. java swing控件大全_java swing 组件大全(新手快进)
  7. html的关于上一行对齐,html – 如何在一行上对齐我的所有li?
  8. Codeforces Round #499 (Div. 2) Problem-A-Stages(水题纠错)
  9. 【面向对象】基本概念
  10. 单元测试(三)基本使用
  11. 前端填空题_一年前端面试总结|入职字节|2020.8
  12. 云存储软件行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
  13. Daily Scrum10 11.14
  14. MAX DotNet 透明界面效果代码实例 转自CG++原帖
  15. InstallShield使用完全教程
  16. Unity : Timeout while trying to pause the Unity Engine.应用闪退问题修复
  17. 「Python网络编程」如何让蔡徐坤同时唱跳rap篮球/初识多线程(二)
  18. 使用sql服务器发送贺卡_发送免费电子贺卡的最佳网站
  19. 慧择业务布局成效明显,戴维斯双击可期
  20. 最新易发卡PJ免授权版源码

热门文章

  1. linux命名管道进程间通信,《Linux 进程间通信》命名管道:FIFO
  2. android解析JSON数组
  3. [转]Windows环境中使用版本管理工具 Git
  4. 2018-12-21 作业
  5. 转--大话session
  6. CSS 元素超出部分滚动, 并隐藏滚动条
  7. RHEL4.4安装YUM
  8. PHP新手之学习类与对象(4)
  9. WEB前端开发规范文档
  10. 电脑硬件知识大扫盲:CPU技术参数集锦