文档章节

CentOs 下安装 ffmpeg 以及添加 ogg 音频支持

书一
 书一
发布于 2013/12/25 17:12
字数 905
阅读 5493
收藏 89
点赞 10
评论 8

简单介绍

    FFmpeg是一个自由软件,可以运行音频和视频多种格式的录影、转换、流功能[1],包含了libavcodec ─这是一个用于多个项目中音频和视频的解码器库,以及libavformat——一个音频与视频格式转换库。(来自维基百科)

安装前提

    由于在centos下使用 yum install ffmpeg 是找不到安装包的,所以需要通过其他方法来安装:(以下摘自网络http://aqbjzxl.iteye.com/blog/1408478

一、安装ffmpeg 
    操作系统:centos 5.6 
    (一)安装编译环境 
    #yum install -y automake autoconf libtool gcc gcc-c++  
    (二)安装所需程序库的RPM包到 centos(因为centos自带的库中没有ffmpeg包,这里相当于是扩展) 
    view plaincopy to clipboardprint? 
    #rpm -Uhv http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.3.6-1.el5.rf.i386.rpm  
 
    (三)安装 Install ffmpeg 等模块 
    yum -y install ffmpeg ffmpeg-devel

   本人就是使用以上方法安装成功的。

   当然你也可以选择编译源码安装,只需要在安装之前,将 ffmpeg 需要的支持库安装好就是了,我之所以选择这种安装方式就是不想再去逐个编译各种库。

   安装好之后可以使用下面命令查看:

ffmpeg
ffmpeg -codecs  /*查看支持的解码库*/

安装 ogg 音频支持

    ogg 格式在主要用于 html5 音频格式,其文件相比 mp3 和 wav 格式要小很多,当然比不上 amr 的语音格式小,可惜 html5 不支持amr的播放。

    首先你需要下载 ogg 的安装包 http://xiph.org/downloads/ 你需要下载 libogg-1.3.1.tar.gz 和 libvorbis-1.3.3.tar.gz  ,下载完成之后解压,俩个包都可以使用如下命令安装,进入解压目录,执行如下命令。

./configure --prefix=/usr

    安装好之后,你的机器就添加了对 ogg 音频的支持。这里你需要先安装 libogg,因为 libvorbis 需要 libogg 的支持。

重新编译 ffmpeg

    接下来就需要重新编译安装一下 ffmpeg , 这时候你需要去下载一个 ffmpeg 的源码包,在开源中国软件下载站我已经将 ffmpeg 的下载添加进去了,http://dl.oschina.net/soft/ffmpeg 在这里你需要下载 0.6.7 版,如果使用 2.1.1 版的话,有一些编译选项可能就不支持了,需要一个个移除。

    运行

ffmpeg

  拷贝如下信息

configuration: --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64 --mandir=/usr/share/man --incdir=/usr/include --disable-avisynth --extra-cflags='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -fPIC' --enable-avfilter --enable-libdirac --enable-libfaac --enable-libfaad --enable-libfaadbin --enable-libgsm --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libx264 --enable-gpl --enable-nonfree --enable-postproc --enable-pthreads --enable-shared --enable-swscale --enable-vdpau --enable-version3 --enable-x11grab

 当然你可以将不需要的移除,

  在 ffmpeg 源码目录下运行

./configure --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64 --mandir=/usr/share/man --incdir=/usr/include --disable-avisynth --extra-cflags='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -fPIC' --enable-avfilter --enable-libdirac --enable-libfaac --enable-libfaad --enable-libfaadbin --enable-libgsm --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libx264 --enable-gpl --enable-nonfree --enable-postproc --enable-pthreads --enable-shared --enable-swscale --enable-vdpau --enable-version3 --enable-x11grab  --enable-libvorbis

    最后的一项是 --enable-libvorbis ,这个就是加入 ogg 的音频支持。

    编译完成之后  ,运行    

make && make install

   就完成 ffmpeg 的安装了

简单测试

    可以使用如下命令测试 amr 到 ogg 的转码:

ffmpeg -i  xxx.amr -f ogg  -acodec libvorbis -ac 2 -ab 128k -ar 44100 xxx.ogg

   可以使用如下命令测试 amr 到 mp3 的转码:

ffmpeg -i  xxx.amr  xxx.mp3

   可见 ffmpeg 对 mp3 的支持还是好很多的。

  转码成功可以看到类似下面的输出:

 

   转码的具体参数请查看help。




© 著作权归作者所有

共有 人打赏支持
书一

书一

粉丝 214
博文 10
码字总数 3626
作品 0
深圳
程序员
加载中

评论(8)

Mr72
Mr72
32个赞
书一
书一

引用来自“cokolin”的评论

引用来自“廖凯”的评论

引用来自“cokolin”的评论

ogg已淘汰,opus才是王道,比aac还要好!

html5不支持吧

还有哦,HTML5没有规定具体的音频格式

是没有,只对部分浏览器的部分支持,所以很烦人,
cokolin
cokolin

引用来自“廖凯”的评论

引用来自“cokolin”的评论

ogg已淘汰,opus才是王道,比aac还要好!

html5不支持吧

还有哦,HTML5没有规定具体的音频格式
cokolin
cokolin

引用来自“廖凯”的评论

引用来自“cokolin”的评论

ogg已淘汰,opus才是王道,比aac还要好!

html5不支持吧

Firefox(15起)和Chrome(26起)都支持!
书一
书一

引用来自“cokolin”的评论

ogg已淘汰,opus才是王道,比aac还要好!

html5不支持吧
cokolin
cokolin
ogg已淘汰,opus才是王道,比aac还要好!
後方之水
後方之水
Gentoo用户路过:USE=vorbis emerge -av ffmpeg
雨翔河
雨翔河
我以前遇到过这个问题,记得是用的一个GUI界面的转码工具。
ffmpeg + m3u8-segmenter 配置

HTML5 + 流媒体文件 目前安装过的服务器版本 ubuntu 1.3 Centos 6.5 下面2个是在Centos上使用的 Centos 准备安装删除已安装包 yum erase ffmpeg x264 x264-devel Centos 安装各种依赖包 yum ...

汉克斯
2015/07/21
0
1
CentOS安装视频转换FFmpeg和切割工具segmenter

一、yum安装FFmpeg 1. 最偷懒的方式就是yum安装了,自动解决依赖。不过CentOS系统默认无FFmpeg源,企业版 Linux 附加软件包EPEL源也不包含,需要手动添加yum源配置/etc/yum.repos.d/dag.repo...

董松
2015/05/23
0
0
centos上安装ffmpeg

FFmpeg介绍 FFmpeg是一个开源免费跨平台的视频和音频流方案,属于自由软件,采用LGPL或GPL许可证(依据你选择的组件)。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的...

水墨如丹青
04/13
0
0
Install ffmpeg on CentOS (RHEL/Fedora)

mkdir ffmpegsources cd ffmpegsources/ yasm wget http://www.tortall.net/projects/yasm/releases/yasm-1.2.0.tar.gztar zxvf yasm-1.2.0.tar.gz./configuremake && sudo make install x26......

querychinesesto
2015/08/27
0
0
PHP中利用Ffmpeg获得flv视频缩略图和播放时间

这里简单说一下:FFmpeg是用于录制、转换和流化音频和视频的完整解决方案,一套领先的音/视频编解码类库。官方正式版ffmpeg不支持rmvb和rm格式. 不过有很多解决方法 FFmpeg的官方网址是 http...

5D同学
2012/04/16
0
0
ffmpeg安装第三方编码器(encoder)库,ffmpeg编码h264

ffmpeg安装第三方编码器(encoder)库 关键词:ffmpeg、编码h264、第三方encoder 安装好了ffmpeg后,如果你使用ffmpeg工具去把某个视频文件转成h264视频编码、mp3音频编码or其他ffmpeg自身不...

fz00x0zf
06/27
0
0
ffmpeg安装第三方编码器(encoder)库,ffmpeg编码h264(完)

ffmpeg安装第三方编码器(encoder)库 关键词:ffmpeg、编码h264、第三方encoder 安装好了ffmpeg后,如果你使用ffmpeg工具去把某个视频文件转成h264视频编码、mp3音频编码or其他ffmpeg自身不...

Michael_Yuan
2012/07/23
0
2
Linux 下完整安装ffmpeg(包括各种解码器)

FFmpeg 是什么? FFmpeg是一个开源免费跨平台的视频和音频流方案,属于自由软件,采用LGPL或GPL许可证(依据你选择的组件)。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常...

霖_柒
2015/04/27
0
0
使用Nginx+FFMPEG搭建HLS直播转码服务器

目的:使Nginx支持Rtmp协议推流,并支持hls分发功能及FFMPEG转码多码率功能。 一、准备工作 模块:nginx-rtmp-module-master(支持rtmp协议) 下载地址: http://nginx.org https://github.com/a...

ffredy
2015/08/15
0
1
linux 下安装ffmpeg

1、下载ffmpeg。 2、解压   tar xvfj ffmpeg-0.11.1.tar.bz2   得到解压后的目录是ffmpeg-0.11.1 3、配置   ./configure --enable-shared --prefix=/usr/local/ffmpeg   其中:--ena...

一一无念
2012/10/31
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Spark Streaming + Kafka Integration Guide

The Spark Streaming integration for Kafka 0.10 is similar in design to the 0.8 Direct Stream approach. It provides simple parallelism, 1:1 correspondence between Kafka partition......

刺猬一号
14分钟前
0
0
数据结构与算法2

一个数组的例子,实现查找,显示和删除的功能。 在这个数组中存储的数据类型是long型,使用long型为的是表明这是数据,而int型被用来表示下标。通常数据结构存储的数据项包含有好几个字段,所...

沉迷于编程的小菜菜
25分钟前
0
0
Python3 基于 requests 批量下载图片

Python3 基于 requests 批量下载图片 import requestsheaders = {'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8','Accept-Encod......

leeyi
25分钟前
0
0
java获取当前时间所在一周的周一和周日日期

/** * 当前时间所在一周的周一和周日时间 * @param time 当前时间 * @return */ public static Map getWeekDate(String time) { Map map = new HashedMap(); SimpleDateFormat sdf = new Si......

小弱鸡
57分钟前
0
0
Redis数据的导出和导入(dump和load方式)

网上有些文章已经不再适用,本人也是踩了些坑,在此记录下。 迁移redis数据一般有如下3种方式: 第三方工具redis-dump,redis-load aof机制,需要开启aof功能 rdb存储机制 这里介绍第一种方式...

iplusx
今天
2
0
ElasticSearch 高亮显示大文档搜索结果

2016年12月,我们开始研究Ambar——一个文档搜索系统。Ambar使用ElasticSearch作为核心搜索引擎。 在Ambar开发的过程中,我们处理了很多与ES相关的问题,我们想分享我们得到的宝贵经验。让我...

九州暮云
今天
1
0
Python 使用 pywifi 模块 破解wifi密码

git https://github.com/awkman/pywifi 常见常量 from pywifi import const# Define interface status.IFACE_DISCONNECTED = 0IFACE_SCANNING = 1IFACE_INACTIVE = 2IFACE_CONNEC......

阿豪boy
今天
2
0
phpstorm使用Iedis

phpstorm的redis插件Iedis是真好用 看了网上挺多的文章,但是由于我系统还是ubuntu,就有点尴尬了,现在破解之后,留个笔记,即使自己之后有需要也可以很快翻阅 先下载资源 资源下载 zip压缩...

贤郎--均灵
今天
0
0
第三章 spring-bean之FactoryBeanRegistrySupport(4)

前言 从FactoryBeanRegistrySupport类的名字可以看出FactoryBeanRegistrySupport负责FactoryBean的注册与支持。如果想知道FactoryBean相关的资料,请阅读spring-bean中关于FactoryBean的解读...

鸟菜啊
今天
0
0
CentOS “Destination Host Unreachable”问题解决办法

挑战极速安装CentOS时遇到局域网主机不能通信的情况: [root@zjd network-scripts]# ping 8.8.8.8PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.64 bytes from 8.8.8.8: icmp_seq=1 ttl=......

wffger
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部