linux编译ffmpeg.exe,linux下编译FFmpeg_都赖me发騷的博客-程序员宅基地

技术标签: linux编译ffmpeg.exe  

linux下编译FFmpeg

2020年01月11日

阅读数:12

这篇文章主要向大家介绍linux下编译FFmpeg,主要内容包括基础应用、实用技巧、原理机制等方面,希望对大家有所帮助。

1。首先获取ffmpeg

经过svn下载:

http://subversion.tigris.org下载SVN客户端程序。

先装subversion,确保已经安装了apr和apr-util,在apache.org网站能下到

wget

http://subversion.tigris.org/downloads/subversion-1.3.2.tar.gz

tar zvxf subversion-1.3.2.tar.gz

cd subversion-1.3.2

./configure --with-apr=/usr/local/apr-httpd --with-apr-util=/usr/local/apr-util-httpd/

make ; make install

到此,咱们就能够经过svn命令获取最新的ffmpeg了

svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg

你会发如今你所在的目录,自动出现一个ffmpeg的目录,就是你下载的源代码。咱们还不能这么快编译ffmpeg,应该若是要让ffmpeg支持更多格式的转换,还需作一些前期工做

2.支持mp3,linux固然是lame,下载解压

cd lame-3.96.1

./configure --enable-shared --prefix=/usr

make ; make install

这里推荐尽可能装在/usr下,默认是装在/usr/local下。这样ffmpeg编译都能顺利的找到库文件

3.支持Ogg Vorbis:

as4自带相应的rpm包,你能够安装一下以下rpm包

libvorbis, libvorbis-devel,libogg, libogg-devel

4.支持xvid x264,如今最流行的两种高质量的压缩格式

xvid的编译安装

wget

http://downloads.xvid.org/downloads/xvidcore-1.1.0.tar.gz

tar zvxf xvidcore-1.1.0.tar.gz

./configure --prefix=/usr

make ; make install

x264的获取一样是采用svn方式

svn co svn://svn.videolan.org/x264/trunk x264

cd x264

./configure --prefix=/usr --enable-shared

make ; make install

5.AC3和dts编码的支持

as4系统彷佛已经支持ac3编码,编译的时候只要加--enable-a52 --enable-gpl参数就行

libdts编译参数

./configure --prefix=/usr

make ; make install

6.mpg4 aac格式支持,因为服务器还针对手机用户服务,因此,相似aac,mpg4铃声格式的支持,咱们也得作。这里咱们安装faad2和faac就行

下载请到

http://www.audiocoding.com/modules/mydownloads/

FAAD2的编译

cd faad2

autoreconf -vif

./configure --prefix=/usr --with-mp4v2 --enable-shared

make ; make install

faac的编译

cd faac

chmod +x bootstrap

./bootstrap

./configure --prefix=/usr --with-mp4v2 --enable-shared

make ; make install

7.支持3gp格式,这也是如今好多手机支持的格式,由于手机用户是咱们的主要用户,因此也得支持编译

编译的时候加上--enable-amr_nb --enable-amr_wb参数就行,根据编译系统的提示,因此咱们得下载一些编译3gp所需得文件。

wget

http://www.3gpp.org/ftp/Specs/ar ... 6.204/26204-510.zip

解压之后把里面的文件都拷贝到libavcodec/amrwb_float

wget

http://www.3gpp.org/ftp/Specs/ar ... 6.104/26104-510.zip

解压之后把里面的文件都拷贝到libavcodec/amr_float

好了,基本ffmpeg支持的格式,咱们基本都作好前期准备了,下面是ffmpeg的编译

./configure --prefix=/usr --enable-gpl --enable-shared --enable-mp3lame --enable-amr_nb --enable-amr_wb --enable-amr_if2 --enable-libogg --enable-vorbis --enable-xvid --enable-a52 --enable-a52bin --enable-faadbin --enable-dts --enable-pp --enable-faad --enable-faac --enable-x264 --enable-pthreads --disable-ffserver --disable-ffplay

make ; make install

补充1:

关于3gp的编译,若是你们要编译--enable-amr_nb-fixed,那就不能跟--enable-amr_nb同时编译,我不大清楚这二者到底有什么区别,彷佛fixed是修正版,管他呢,编译的方法:

wget

http://www.3gpp.org/ftp/Specs/ar ... 6.073/26073-510.zip

解压之后把里面的文件都拷贝到libavcodec/amr目录下

修改libavcodec/amr/makefile 找到CFLAGS = -Wall -pedantic-errors -I. $(CFLAGS_$(MODE)) -D$(VAD) 换成CFLAGS = -Wall -I. $(CFLAGS_$(MODE)) -D$(VAD) -DMMS_IO

总体编译参数就是

./configure --prefix=/usr --enable-gpl --enable-shared --enable-mp3lame --enable-amr_nb-fixed --enable-amr_wb --enable-amr_if2 --enable-libogg --enable-vorbis --enable-xvid --enable-a52 --enable-a52bin --enable-dts --enable-pp --enable-faad --enable-faadbin --enable-faac --enable-x264 --enable-pthreads --disable-ffserver --disable-ffplay

make

make install

补充2:

有朋友说在当在cpu是x86的状况下,不能编译过去,我这里没发生过这状况,若是你真编译不过去,能够试着加上cpu=cpu

补充3:

对于rm、wmv能够用wmplayer提供的Mencoder来处理.环境:RedHat AS4

1。首先获取ffmpeg

经过svn下载:

http://subversion.tigris.org下载SVN客户端程序。

先装subversion,确保已经安装了apr和apr-util,在apache.org网站能下到

wget

http://subversion.tigris.org/downloads/subversion-1.3.2.tar.gz

tar zvxf subversion-1.3.2.tar.gz

cd subversion-1.3.2

./configure --with-apr=/usr/local/apr-httpd --with-apr-util=/usr/local/apr-util-httpd/

make ; make install

到此,咱们就能够经过svn命令获取最新的ffmpeg了

svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg

你会发如今你所在的目录,自动出现一个ffmpeg的目录,就是你下载的源代码。咱们还不能这么快编译ffmpeg,应该若是要让ffmpeg支持更多格式的转换,还需作一些前期工做

2.支持mp3,linux固然是lame,下载解压

cd lame-3.96.1

./configure --enable-shared --prefix=/usr

make ; make install

这里推荐尽可能装在/usr下,默认是装在/usr/local下。这样ffmpeg编译都能顺利的找到库文件

3.支持Ogg Vorbis:

as4自带相应的rpm包,你能够安装一下以下rpm包

libvorbis, libvorbis-devel,libogg, libogg-devel

4.支持xvid x264,如今最流行的两种高质量的压缩格式

xvid的编译安装

wget

http://downloads.xvid.org/downloads/xvidcore-1.1.0.tar.gz

tar zvxf xvidcore-1.1.0.tar.gz

./configure --prefix=/usr

make ; make install

x264的获取一样是采用svn方式

svn co svn://svn.videolan.org/x264/trunk x264

cd x264

./configure --prefix=/usr --enable-shared

make ; make install

5.AC3和dts编码的支持

as4系统彷佛已经支持ac3编码,编译的时候只要加--enable-a52 --enable-gpl参数就行

libdts编译参数

./configure --prefix=/usr

make ; make install

6.mpg4 aac格式支持,因为服务器还针对手机用户服务,因此,相似aac,mpg4铃声格式的支持,咱们也得作。这里咱们安装faad2和faac就行

下载请到

http://www.audiocoding.com/modules/mydownloads/

FAAD2的编译

cd faad2

autoreconf -vif

./configure --prefix=/usr --with-mp4v2 --enable-shared

make ; make install

faac的编译

cd faac

chmod +x bootstrap

./bootstrap

./configure --prefix=/usr --with-mp4v2 --enable-shared

make ; make install

7.支持3gp格式,这也是如今好多手机支持的格式,由于手机用户是咱们的主要用户,因此也得支持编译

编译的时候加上--enable-amr_nb --enable-amr_wb参数就行,根据编译系统的提示,因此咱们得下载一些编译3gp所需得文件。

wget

http://www.3gpp.org/ftp/Specs/ar ... 6.204/26204-510.zip

解压之后把里面的文件都拷贝到libavcodec/amrwb_float

wget

http://www.3gpp.org/ftp/Specs/ar ... 6.104/26104-510.zip

解压之后把里面的文件都拷贝到libavcodec/amr_float

好了,基本ffmpeg支持的格式,咱们基本都作好前期准备了,下面是ffmpeg的编译

./configure --prefix=/usr --enable-gpl --enable-shared --enable-mp3lame --enable-amr_nb --enable-amr_wb --enable-amr_if2 --enable-libogg --enable-vorbis --enable-xvid --enable-a52 --enable-a52bin --enable-faadbin --enable-dts --enable-pp --enable-faad --enable-faac --enable-x264 --enable-pthreads --disable-ffserver --disable-ffplay

make ; make install

补充1:

关于3gp的编译,若是你们要编译--enable-amr_nb-fixed,那就不能跟--enable-amr_nb同时编译,我不大清楚这二者到底有什么区别,彷佛fixed是修正版,管他呢,编译的方法:

wget

http://www.3gpp.org/ftp/Specs/ar ... 6.073/26073-510.zip

解压之后把里面的文件都拷贝到libavcodec/amr目录下

修改libavcodec/amr/makefile 找到CFLAGS = -Wall -pedantic-errors -I. $(CFLAGS_$(MODE)) -D$(VAD) 换成CFLAGS = -Wall -I. $(CFLAGS_$(MODE)) -D$(VAD) -DMMS_IO

总体编译参数就是

./configure --prefix=/usr --enable-gpl --enable-shared --enable-mp3lame --enable-amr_nb-fixed --enable-amr_wb --enable-amr_if2 --enable-libogg --enable-vorbis --enable-xvid --enable-a52 --enable-a52bin --enable-dts --enable-pp --enable-faad --enable-faadbin --enable-faac --enable-x264 --enable-pthreads --disable-ffserver --disable-ffplay

make

make install

补充2:

有朋友说在当在cpu是x86的状况下,不能编译过去,我这里没发生过这状况,若是你真编译不过去,能够试着加上cpu=cpu

补充3:

对于rm、wmv能够用wmplayer提供的Mencoder来处理.

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_30548481/article/details/116715008

智能推荐

c语言两个字符串比较,将两个字符串s1和s2比较,如果s1>s2,编写一个程序,将连个字符串s1和s2比较,如果s1 > s2,输出一个整数;若s1 = s2,输出0;若s1 < s2,输出一个负数。..._Ms 汪的博客-程序员宅基地

编写一个程序,将连个字符串s1和s2比较,如果s1 &gt; s2,输出一个整数;若s1 = s2,输出0;若s1 &lt; s2,输出一个负数。不要用strcpy函数。两个字符串用gets函数读入。输出的正数或负数的绝对值应是相比较的两个字符串相对应字符的ASCII码的差值。例如,"A"和“C”相比,由于"A" &lt; "C",应输出时间:2020-07-17本文章向大家介绍编写一个程序,将连...

httpclient proxy 获取权限,然后下载文件_weixin_30607659的博客-程序员宅基地

1 public class SimulateLogin { 2 private HttpClient httpClient; 3 4 public SimulateLogin(String loginURL, String userName, String password, String iplogin) {...

PAT乙级 1030 完美数列 (JAVA)_嘻哈猴程序猿的博客-程序员宅基地

1030完美数列(25分)给定一个正整数数列,和正整数p,设这个数列中的最大值是M,最小值是m,如果M≤mp,则称这个数列是完美数列。现在给定参数p和一些正整数,请你从中选择尽可能多的数构成一个完美数列。输入格式:输入第一行给出两个正整数N和p,其中N(≤10​5​​)是输入的正整数的个数,p(≤10​9​​)是给定的参数。第二行给出N个正整数,每个数不...

android 安装界面关闭程序,关于Android app首次安装完成后在安装界面直接“打开”应用再按home键返回桌面,重新进入app重复实例化launcher activity的问题的解决..._weixin_39969448的博客-程序员宅基地

一、问题描述如标题所述,最近被重复实例化launcher activity这个问题搞得很惨,这个问题有哪些表现呢?如下:在package installers 安装界面安装完一个应用后,直接打开app,然后进入了 Activity_1, 此时再通过此activity用startActivity(intent)的方法打开 Activity_2.然后按home键返回桌面,在桌面点击app图标进入,你觉...

分数四则运算(Java)acm.sdut_想做个小仙女的博客-程序员宅基地

Problem Description编写程序,实现两个分数的加减法Input输入包含多行数据;每行数据是一个字符串,格式是"a/boc/d",其中a, b, c, d为数字(每个数字保证为正数并且不存在正号)。o是运算符"+"或者"-","*","\"。数据以EOF结束,输入数据保证合法。Output直接输出结果,并且注意结果应符合书写习惯,没有多

基于相关关键字搜索引擎优化的网站排名分析项目_田春峰的博客-程序员宅基地

基于相关关键字搜索引擎优化的网站排名分析项目         先转载一段新闻:   “我在战略上是藐视.COM域名的,明年中国.CN域名注册量将超过.COM”,8月29日,中国互联网络信息中心(CNNIC)主任毛伟对外表示。  CNNIC一直在大力推广中国国家域名“.CN”,不过目前.COM域名的注册量还是第一,据7月19日发布的《第十八次中国互联网络调查报告》显示,中国的域名

随便推点

MFC下自绘ListBox或者ListCtrl中的内容_little_angel的博客-程序员宅基地

最近在做一个UI时,需要将一些笔画非常多的字显示在一个ListBox列表中,供别人参考,高高兴兴做完了以后,运行一看,糟糕,由于笔画太多,字太小,眼睛根本看不清楚,不过当时并不在意,不就是用SetFont就搞定的事吗!!然后在获得该ListBox的DC后,用SetFont一把,结

oracle数据库tqs,数据库QPS 和TQS相关问题_zhibo shan的博客-程序员宅基地

oracle TPS:WITH HIST_SNAPS AS(SELECT INSTANCE_NUMBER,SNAP_ID,ROUND(BEGIN_INTERVAL_TIME, ‘MI’) DATETIME,(BEGIN_INTERVAL_TIME + 0 - LAG(BEGIN_INTERVAL_TIME + 0)OVER(PARTITION BY DBID, INSTANCE_NUMBER OR...

spring测试(最终)_北凉HE弹头的博客-程序员宅基地_spring 测试

考虑下图中的事务性服务层类。你使用的是 Spring 事务,它内部使用 Spring AOP 调用 update1 方法时,发生了什么事情? (选择一项) public class ClientServiceImpl implements ClientService{ @Transactional (propagation=Propagation.REQUIRED) public void update1(){ update2(); } @Transacti.

微信网页开发(3)--微信网页授权_程序员大阳的博客-程序员宅基地_微信网页授权流程

本文目录1. 什么是授权2. 两种授权方式3. 网页授权access_token和普通access_token4. 网页授权流程5. 网页授权代码开发5.1 项目搭建5.2 修改配置文件5.3 开发启动类5.4 开发公众号配置类5.5 开发控制器5.6 开发测试网页6. 测试6.1 网页授权测试6.2 获取用户code测试6.3 获取JSSDK配置信息测试7. 本地地址测试问题8. 小结1. 什么是授权先解释下什么是授权,授权是指微信用户,授权网页获取用户相关的信息。也就是说,微信官方为了保护用户隐私

8700g_liu613728的博客-程序员宅基地

谁有黑莓8700g软件啊?

labwindows随机数生成c语言,LabWindows/CVI虚拟仪器设计技术基本控件使用之:回调函数..._weixin_39621379的博客-程序员宅基地

ing标题:文件名OKBUTTONCommand Button标题:显示(__S) 回调函数:OkCallbackQUITBUTTONCommand Button标题:退出(__Q) 回调函数:QuitCallback(2)程序源代码?//头文件声明,系统自动添加#include #include #include #include "回调函数.h"//全局静态变量static int panel...