安装包和主要步骤:
1. 首先安装系统基础环境
RHEL & CentOS 系列:yum install -y automake autoconf libtool gcc gcc-c++
Debian & Ubuntu 系列:apt-get install automake autoconf libtool gcc gcc-c++
2. 下载最新的FFMpeg源码包
FFMpeg官方下载地址:http://ffmpeg.org/download.html。
一般直接使用最新版本,下载完成后解压缩,进入源码文件夹,运行“./configure --help”查看帮助,这里主要是为了确认需要安装的扩展,有些扩展默认是已经开启的,有些是需要单独下载扩展源码包进行编译的。以我的需求为例,需要单独编译yasm、lame、OenCore AMR、AmrNB和AmrWB,其中lame是MP3解码器。
3. 编译所需源码包
从各个官方地址下载上述五种源码包,为了保证兼容最新版本的ffmpeg,请务必也下载最新版本的源码:
yasm:http://yasm.tortall.net/Download.html
lame:http://lame.sourceforge.net/download.php
OenCore AMR:http://sourceforge.net/projects/opencore-amr
AmrNB & AmrWB:http://www.penguin.cz/~utx/amr
分别解压缩并编译上述源码包,直接使用“./configure && make && make install”即可。
4. 编译FFMpef
回到刚才的FFMpeg源码目录,打开所需扩展并且编译FFMpeg:
./configure --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-version3 --enable-shared
make && make install
ldconfig
最后写入config后,终端运行ffmpeg命令,出现success和已安装的扩展,则运行成功。
5. 可能遇到的问题
ffmpeg默认安装目录为“/usr/local/lib”,有些64位系统下软件目录则为“/usr/lib64”,编译过程中可能会出现“ffmpeg: error while loading shared libraries: libmp3lame.so.0: cannot open shared object file: No such file or directory”等类似的错误,解决办法是建立软链接或者移动库文件到相应的目录:
ln -s /usr/local/lib/libmp3lame.so.0.0.0 /usr/lib64/libmp3lame.so.0
mv /usr/local/lib/libmp3lame.so.0.0.0 /usr/lib64/libmp3lame.so.0
6. 使用方法
MP3转换AMR: ffmpeg -i 1.mp3 -ac 1 -ar 8000 1.amr
AMR转换MP3: ffmpeg -i 1.amr 1.mp3
遇到问题及解决:
1. ERROR: libopenjpeg not found
http://code.google.com/p/openjpeg/downloads/detail?name=openjpeg-1.5.1.tar.gz&can=2&q=
下载openjpeg-1.5.1的代码,注意不要下载openjpeg-2.0的,否则ffmpeg跟openjpeg的接口不支持,编译会处错误。
configure
make,make install
找到头文件是在/usr/local/include/openjpeg-1.5.1下面,而ffmpeg在连接的时候,其实是/usr/local/include,所以提示说“ERROR: libopenjpeg not found”。将/usr/local/include/openjpeg-1.5.1下面的头文件“openjpeg.h”拷贝到/usr/local/include下面。
1,x264也是有这个问题,x264.h这个文件要放在/usr/local/include下,而不是在/usr/local/下单独建个子目录放。 其他的库都是在make install的时候自己建的子文件夹。
需要将libx264的库文件拷贝到/usr/local/lib下
或者直接在configure的时候,改变路径,如下所示:
./configure --includedir=/usr/local/include --libdir=/usr/local/lib --enable-shared
即可。
2. ERROR:libfdk_aac not found
http://sourceforge.net/projects/opencore-amr/?source=directory
下载fdk-aac-0.1.1.tar.gz
执行
configure
make
make install
3. ERROR:libilbc not found
https://github.com/dekkers/libilbc
git clone git://github.com/dekkers/libilbc.git
解压
安装cmake,如下所示
sudo apt-get install cmake
创建一个build目录,执行:
cd build
cmake .. (这里的..意思是,如果是一个.表示CMakeLists.txt在当前路径下,两个..表示CMakeLists.txt在上一层目录下)
cmake install ..
make (在build/bin下会找到可执行文件。)
make install (将生成的库拷贝到linux相关目录下)
4. ERROR: libmp3lame >= 3.98.3 not found
sudo apt-get install libmp3lame-dev
5. ERROR: libopencore_amrnb not found
sudo apt-get install libx264-dev libxvidcore-dev libopencore-amrwb-dev libopencore-amrnb-dev libfaad-dev libfaac-dev libmp3lame-dev \ libtwolame-dev liba52-0.7.4-dev libcddb2-dev libcdaudio-dev libcdio-cdda-dev libvorbis-dev libopenjpeg-dev
(5) git chone git://git.videolan.org/x264.git
configure
make && make install
(6) ERROR: libvo_aacenc not found
http://sourceforge.net/projects/opencore-amr/files/vo-aacenc/vo-aacenc-0.1.2.tar.gz/download
(7) ERROR: libvo_amrwbenc not found
http://sourceforge.net/projects/opencore-amr/files/vo-amrwbenc/
(8) ERROR: libvpx decoder version must be >=0.9.1
http://code.google.com/p/webm/downloads/detail?name=libvpx-v1.1.0.tar.bz2&can=2&q=
(9)编译 ffplay 需要 libsdl1.2-dev 库:sudo apt-get install libsdl1.2-dev (10)
ffmpeg: error while loading shared libraries: libavdevice.so.52: cannot open shared object file
Solution:
Search the file libavdevice.so.52 on the server using the ‘find’ command
1# find / -name libavdevice.so.52
You need to add the path to the directory the file is in, in the ‘ld.so.conf’ file. If for example the file is located under “/usr/local/lib” directory, execute
1# vi /etc/ld.so.conf
and add the following at the bottom of the file
/usr/local/lib
7. Encoder (codec id 86017) not found for output stream #0.0
解决方案:http://diogomelo.net/blog/11/encoder-codec-id-86017-not-found-output-stream-00-compile-ffmpeg-yourself
相关推荐
上传语音有效期3天,可用微信多媒体接口下载语音到自己的服务器, 但下载的格式是amr 格式,我们网页是mp3的多 所以是要将amr 转为mp3 下面是ubuntu 下安装ffmpeg和php 掉用ffmpeg的方法 sudo apt-get update
选择linux下的Ubuntu进入:https: launchpad net jon severinsson +archive ubuntu ffmpeg 点击Technical details about this PPA展开 选择:Trusty 14 04 复制下面的内容 加载第三方源输入: sudo su">首先安装...
ubuntu下安装ffmpeg和X264,最新的X264源码
在Ubuntu上安装x264源码,我们需要按照以下步骤进行: 1. **更新系统**:确保你的Ubuntu系统是最新的,以避免编译过程中遇到依赖问题。 ``` sudo apt-get update sudo apt-get upgrade ``` 2. **安装依赖**:...
ubuntu下安装ffmpeg和X264之ffmepg源码,
要在Ubuntu系统中安装ffmpeg,可以通过以下命令进行安装: ```bash sudo apt-get update sudo apt-get install ffmpeg ``` #### 录制音频 使用ffmpeg录制音频的基本格式如下: ```bash ffmpeg -f alsa -i ...
包含所有ffmpeg组件自动安装编译脚本,为了防止安装过程中报错,需要提前配置好git公钥等验证信息,涉及到拉取ffmpeg的github源码; . build.sh . build_pkg_config.sh . build_libfdk_aac.sh . build_libmp3lame.sh...
ubuntu20.04 可直接使用的ffmpeg(静态编译) built with gcc 9 (Ubuntu 9.3.0-17ubuntu1~20.04) configuration: --prefix=/root/ffmpeg_build --pkg-config-flags=--static --extra-cflags=-I/root/ffmpeg_build/...
FFmpeg 6.0 版本在 Ubuntu 20.04 上编译完成,意味着这个版本是针对该操作系统优化的,能确保在该环境下稳定运行。 Ubuntu 20.04,也称为 Focal Fossa,是 Ubuntu 的一个长期支持(LTS)版本,提供五年技术支持,...
cmake-3.17.4.tar.gz lame-3.100.tar.gz x264-master.tar.bz2 fdk-aac-2.0.1.tar.gz SDL2-2.0.12.tar.gz x265_3.2.tar.gz ffmpeg-4.3.2.tar.bz2 speex-1.2.0.tar.gz 需要自提,已设置为0积分下载~
这个就是在Ubuntu下面安装ffmpeg库 的shell脚本,安装完成后就可以直接使用
在本文中,我们将深入探讨如何在Ubuntu操作系统上利用Qt库和FFmpeg框架进行视频采集、预览,并实现软件的国际化。首先,让我们了解这三个关键组件。 **Ubuntu**: Ubuntu是一款基于Debian的开源Linux发行版,它为...
在Ubuntu系统上,为了使FFmpeg支持DeckLink硬件,我们需要对FFmpeg进行特定的编译配置,这涉及到FFmpeg源码的获取、DeckLink SDK的安装以及编译脚本的修改。 首先,你需要从FFmpeg官方网站下载最新版本的FFmpeg源码...
在 Ubuntu 上安装 FFmpeg4.0.6,首先需要解压 `Ffmpeg4.0.6.tar.gz`,然后通过终端执行以下步骤: 1. 解压文件:`tar -zxvf Ffmpeg4.0.6.tar.gz` 2. 进入解压后的目录:`cd Ffmpeg4.0.6` 3. 添加可执行权限:`chmod...
1. **安装FFmpeg**:在Ubuntu上,可以通过终端使用`apt`命令来安装FFmpeg: ``` sudo apt update sudo apt install ffmpeg ``` 2. **创建推流脚本**:`ffmpeg_push.sh`是一个bash脚本,用于定义FFmpeg如何抓取...
综上所述,"ubuntu下 编译 ffmpeg for Android armv7-a armv8-a"涉及到的知识点包括Ubuntu环境、FFmpeg项目、Android架构、交叉编译、NDK、配置脚本以及硬件加速等。通过这样的编译过程,我们可以创建针对Android...
通过以上步骤,你可以在Ubuntu系统上成功地从源代码编译并安装FFmpeg。这为多媒体应用开发提供了一个强大的工具集。对于初学者来说,理解这些基本步骤非常重要,因为它们不仅适用于FFmpeg,还适用于其他许多开源项目...
在Ubuntu 18.04上编译的FFmpeg 5.1动态库,具有广泛的功能和特性,特别适合开发者进行多媒体应用开发。 标题提及的“ubuntu18.04编译的ffmpeg-5.1动态库”意味着这个版本是专门为Ubuntu 18.04 LTS(长期支持版)...
你可以通过包管理器安装这些依赖,例如在Ubuntu或Debian上使用: ```bash sudo apt-get update sudo apt-get install build-essential nasm yasm ``` 对于Fedora或CentOS用户,可以使用: ```bash sudo dnf ...
在Ubuntu 16.04系统上安装FFmpeg,你需要掌握以下几个关键知识点: 1. **软件源和更新**: 在安装任何软件之前,首先确保你的Ubuntu系统已经更新到最新状态。打开终端,输入以下命令: ``` sudo apt-get update ...