ffmpeg编译安装

  • 前言
  • 一、下载ffmpeg
  • 二、编译安装
    • 2.1 Linux编译ffmpeg
    • 2.2 Windows编译ffmpeg
  • 总结

前言

  Fmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多code都是从头开发的。

  FFmpeg在Linux平台下开发,但它同样也可以在其它操作系统环境中编译运行,包括Windows、Mac OS X等。这个项目最早由Fabrice Bellard发起,2004年至2015年间由Michael Niedermayer主要负责维护。许多FFmpeg的开发人员都来自MPlayer项目,而且当前FFmpeg也是放在MPlayer项目组的服务器上。项目的名称来自MPEG视频编码标准,前面的"FF"代表"Fast Forward"。 [1] FFmpeg编码库可以使用GPU加速。


一、下载ffmpeg

  • ffmpeg下载地址:https://ffmpeg.org/download.html

  通过上面下载地址我们可以进入到如下界面:

  • 也可采用最简单的方式:git clone将ffmpeg源码下载下来:
git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg

二、编译安装

2.1 Linux编译ffmpeg

  1. /usr/local目录下新建一个ffmpeg文件夹,我会将ffmpeg安装在这个文件夹下。
  2. 进入git clone下载的ffmpeg源码包,使用./configure --enable-debug=3 --prefix=/usr/local/ffmpeg 进行编译
  3. 这里我使用的是centos7,编译时产生了一个错误:nasm/yasm not found or too old. Use --disable-x86asm for a crippled build,这是因为原因 FFMPEG为了提高编译速度,使用了汇编指令,如MMX和SSE等。如果系统中没有yasm指令的话,就会该错误。
  4. 知道了为什么出错,也就有了解决的方向,这里只要安装yasm就可以了,最简单的方法只要yum install yasm就可以了。
  5. 安装好yasm之后,我们继续在ffmpeg的源码包中使用make && make install安装就可以了,安装好之后出现的部分如下:

安装好之后配置好环境变量就能使用了:

  • ① 使用locate bash_profile命令找到bash_profile文件
  • ② 进入配置文件vim ~/.bash_profile 并使用 : 分隔并添加路径,如:
  • ③ 保存后,执行 source ~/.bash_profile 使其生效。

2.2 Windows编译ffmpeg

  • 方法一:Cygwin(Cygnus Windows)

  Cygwin是一个在Windows平台上运行的类UNIX模拟环境,是Cygnus Solutions公司开发的自由软件(该公司开发的著名工具还有eCos,不过现已被Redhat收购)。它对于学习UNIX/Linux操作环境,或者从UNIX到Windows的应用程序移植,或者进行某些特殊的开发工作,尤其是使用GNU工具集在Windows上进行嵌入式系统开发,非常有用。随着嵌入式系统开发在国内日渐流行,越来越多的开发者对Cygwin产生了兴趣。

  Cygwin 提供一个UNIX 模拟 DLL 以及在其上层构建的多种可以在 Linux 系统中找到的软件包,在 Windows XP SP3 以上的版本提供良好的支持。Cygwin主要由Red Hat及其下属社区负责维护。

  Cygwin下载地址:http://www.cygwin.com/install.html

  • 方法二(最常使用):MinGW(Minimalist GNU for Windows)+ MSYS2(Minimal SYStem 2)

  • 方法三:VS(Visual Studio 2015/2017…)+ MSYS2(Minimal SYStem 2)


总结

期待大家和我交流,留言或者私信,一起学习,一起进步!

ffmpeg编译安装相关推荐

  1. ubuntu下ffmpeg编译安装

    ubuntu下ffmpeg编译安装 解决库链接不上的问题 ubuntu下ffmpeg编译安装   1.ffmpeg是什么东西?相信很多人第一次接触这个东西,我先在这里做个简单的介绍. FFmpeg是一 ...

  2. Linux下 FFmpeg 编译安装

    FFmpeg是一套可以用来记录.转换数字音频.视频,并能将其转化为流的开源计算机程序. 官网:http://ffmpeg.org 一.FFmpeg安装 安装依赖包: yum install libth ...

  3. ffmpeg 编译安装 ubuntu18.04 4.1

    centos 64可以下载的:https://download.csdn.net/download/m0_37641005/10642836 gpu转码: https://my.oschina.net ...

  4. FFmpeg 编译安装使用总结

    最近想把这段时间学的东西整理下,免得自己健忘. 1.FFmpeg 介绍: ffmpeg是音视频的分离,转换,编码解码及流媒体的完全解决方案,其中最重要的就是libavcodec库.它被mplayer或 ...

  5. FFmpeg显卡版编译安装

    本文内容包括: 在Linux环境下安装FFmpeg 通过命令行实现视频格式识别和转码 有Nvidia显卡的情况下,在Linux下使用GPU进行视频转码加速的方法 FFmpeg编译安装 在FFmpeg官 ...

  6. 在Ubuntu上编译安装OpenCV3

    目录 背景 安装依赖包 安装ffmpeg 编译安装opencv3 理想情况 错误处理 复制头文件 修改头文件 修改OpenCV文件 修改文件方法 更好的解决方法--换OpenCV版本 3.4.1版本的 ...

  7. centos6.0下ffmpeg的安装编译经历

    最近因为要在linux上用ffmpeg处理一些视频,所以在学习centos下要安装ffmpeg,但是能搜到的安装教程感觉都不是很好用,至少我用起来感觉特别不爽,而且在ffmpeg的指令使用上格式写错了 ...

  8. 【流媒体服务器的搭建】2. 源码编译安装ffmpeg

    前言 centos 7 ffmpeg 编译时,打开H264功能时,必须已安装H264(参考这里).否则遇错:ERROR: libx264 not found. 官网 http://ffmpeg.org ...

  9. Linux ffmpeg的安装编译过程

    Linux ffmpeg的安装编译过程 1.下载ffmpeg.     在网上搜索一下,或者到官方网站下载 2.解压    tar命令解压 3.配置 ./configure --enable-shar ...

最新文章

  1. 报复性降薪潮来袭,怎么应对?
  2. torch tensor用法
  3. JavaScript 闭包的详细分享(三种创建方式)(附小实例)
  4. java jvm崩溃_IObjects java 代码导致jvm崩溃了
  5. POJ - 3693 Maximum repetition substring(后缀数组+RMQ)
  6. 保研计算机辅助翻译,本科2013级推免生寄语
  7. linux常见分区格式,linux 分区格式
  8. P4782-[模板]2-SAT问题【tarjan】
  9. python动态心形代码_父亲节,程序员几条代码硬核示爱
  10. go使用cli实现命令行多指令操作
  11. 【水果识别】基于matlab GUI RGB+HSV水果成熟度分级系统【含Matlab源码 825期】
  12. 如何建立工程测量平面控制网?
  13. 解决Provisional headers are shown问题
  14. 移动开发平台WorkPlus | 快速实现企业移动应用集成化
  15. PHP无限极分类两种写法
  16. Rocket Chip 介绍
  17. S3MTilesLayer模型图层显示
  18. 运维人必备:日志分析工具日志易之银行业解决方案
  19. .Net Web开发技术栈 收藏
  20. javascript replace 替换全部

热门文章

  1. linux mdadm 源码,linux下使用mdadm组软raid
  2. 用python画的炫酷图形_推荐一个炫酷Python 手绘图形库
  3. 关于CPU体系结构的123
  4. 生日快乐网站_华晨宇30岁生日快乐:曾经“异类”,如今顶尖!
  5. 计算机组成原理2——一个字是多少字节(切忌默认为一个字等于2字节
  6. IOS 大众点评 搜索界面实现
  7. 【What if 系列】饮料星球
  8. 秒杀系统设计4要素:硬抗高并发,拒绝超卖,避免少卖,打击黄牛
  9. [给创业公司的原生云] ④Spine L2
  10. 聊聊工作中的自我管理和向上管理