ToB企服应用市场:ToB评测及商务社交产业平台
标题:
FFmpeg开辟条记(十一)Windows环境给FFmpeg集成vorbis和amr
[打印本页]
作者:
北冰洋以北
时间:
2024-5-16 10:17
标题:
FFmpeg开辟条记(十一)Windows环境给FFmpeg集成vorbis和amr
FFmpeg内置了aac音频格式,在《FFmpeg开辟实战:从零基础到短视频上线》一书的“5.2.2 Linux环境集成mp3lame”又介绍了怎样给FFmpeg集成mp3格式,常见的音频文件除了这两种之外,还有ogg和amr两种格式也较常用。此中ogg格式的编解码依赖于libogg和libvorbis,而amr格式的编解码依赖于opencore-amr。前文介绍了在Linux环境给FFmpeg集成vorbis和amr,接下来介绍怎样在Windows环境给FFmpeg集成vorbis和amr。
1、安装libogg
libogg支持解析ogg文件结构,也可用于封装ogg格式,它的安装步调说明如下。
(1)到https://www.linuxfromscratch.org/blfs/view/svn/multimedia/libogg.html下载最新的libogg源码,好比2021年6月发布的libogg-1.3.5,该版本的源码下载地址是https://downloads.xiph.org/releases/ogg/libogg-1.3.5.tar.gz。执行下面下令解压下载好的压缩包:
tar zxvf libogg-1.3.5.tar.gz
cd libogg-1.3.5
复制代码
(2)进入解压后的libogg目录,运行下面下令配置libogg。
./configure --prefix=/usr/local/libogg --enable-static --disable-shared
复制代码
(3)运行下面下令编译libogg。
make
复制代码
(4)编译完成后,运行下面下令安装libogg。
make install
复制代码
(5)给环境变量PKG_CONFIG_PATH添加libogg的pkgconfig路径,也就是在/etc/profile文件末端添加如下一行内容:
export PKG_CONFIG_PATH=/usr/local/libogg/lib/pkgconfig:$PKG_CONFIG_PATH
复制代码
然后执行下面下令重新加载环境变量:
source /etc/profile
复制代码
执行下面下令检察当前的环境变量,发现PKG_CONFIG_PATH的修改已经见效。
env | grep PKG_CONFIG_PATH
复制代码
2、安装libvorbis
Vorbis是一种免费的音频编码标准,libvorbis是Vorbis音频的编解码库。由于Vorbis音频通常封装在ogg格式中,所以libvorbis依赖于libogg,它的安装步调说明如下。
(1)到https://www.linuxfromscratch.org/blfs/view/svn/multimedia/libvorbis.html下载最新的libvorbis源码,好比2020年7月发布的libvorbis-1.3.7,该版本的源码下载地址是https://downloads.xiph.org/releases/vorbis/libvorbis-1.3.7.tar.gz。执行下面下令解压下载好的压缩包:
tar zxvf libvorbis-1.3.7.tar.gz
cd libvorbis-1.3.7
复制代码
(2)进入解压后的libvorbis目录,运行下面下令配置libvorbis。
./configure --prefix=/usr/local/vorbis --enable-static --disable-shared --disable-oggtest
复制代码
(3)运行下面下令编译libvorbis。
make
复制代码
(4)编译完成后,运行下面下令安装libvorbis。
make install
复制代码
(5)给环境变量PKG_CONFIG_PATH添加vorbis的pkgconfig路径,也就是在/etc/profile文件末端添加如下一行内容:
export PKG_CONFIG_PATH=/usr/local/vorbis/lib/pkgconfig:$PKG_CONFIG_PATH
复制代码
然后执行下面下令重新加载环境变量:
source /etc/profile
复制代码
执行下面下令检察当前的环境变量,发现PKG_CONFIG_PATH的修改已经见效。
env | grep PKG_CONFIG_PATH
复制代码
3、安装opencore-amr
opencore-amr是AMR音频的编解码库,支持对AMR-NB和AMR-WB格式的音频举行编解码,它的安装步调说明如下。
(1)到https://sourceforge.net/projects/opencore-amr/files/opencore-amr/下载最新的opencore-amr源码,好比2022年10月发布的opencore-amr-0.1.6,该版本的源码下载地址是https://nchc.dl.sourceforge.net/project/opencore-amr/opencore-amr/opencore-amr-0.1.6.tar.gz。执行下面下令解压下载好的压缩包:
tar zxvf opencore-amr-0.1.6.tar.gz
cd opencore-amr-0.1.6
复制代码
(2)进入解压后的opencore-amr目录,运行下面下令配置opencore-amr。
./configure --prefix=/usr/local/amr --enable-static --disable-shared
复制代码
(3)运行下面下令编译opencore-amr。
make
复制代码
(4)编译完成后,运行下面下令安装opencore-amr。
make install
复制代码
4、重新编译FFmpeg
由于FFmpeg默认未启用ogg和amr,因此需要重新配置FFmpeg,标明启用ogg和amr,然后重新编译安装FFmpeg。FFmpeg的Windows环境完整编译过程拜见《FFmpeg开辟实战:从零基础到短视频上线》一书的“8.1 Windows环境编译FFmpeg”,详细的启用步调说明如下。
(1)确保下列路径均已加载至环境变量PKG_CONFIG_PATH
export PKG_CONFIG_PATH=/usr/local/libogg/lib/pkgconfig:$PKG_CONFIG_PATH
export PKG_CONFIG_PATH=/usr/local/vorbis/lib/pkgconfig:$PKG_CONFIG_PATH
复制代码
(2)修改vorbis的pc描述文件,先执行下面下令进入vorbis的PKG目录:
cd /usr/local/vorbis/lib/pkgconfig
复制代码
该目录下有vorbis.pc、vorbisenc.pc和vorbisfile.pc三个pc文件,三个都要修改。此中vorbis.pc的Libs参数末端增长“ -logg”,也就是改成下面这样:
Libs: -L${libdir} -lvorbis -logg
复制代码
vorbisenc.pc和vorbisfile.pc的Libs参数末端都添加“ -lvorbis -logg”,好比vorbisenc.pc改成下面这样:
Libs: -L${libdir} -lvorbisenc -lvorbis -logg
复制代码
又如vorbisfile.pc改成下面这样:
Libs: -L${libdir} -lvorbisfile -lvorbis -logg
复制代码
(3)回到FFmpeg源码的目录,执行以下下令重新配置FFmpeg,主要增长启用ogg和amr。(增长了选项--enable-libvorbis --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-version3)
./configure --prefix=/usr/local/ffmpeg --arch=x86_64 --enable-shared --disable-static --disable-doc --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libdavs2 --enable-libmp3lame --enable-gpl --enable-nonfree --enable-libfreetype --enable-sdl2 --enable-libvorbis --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-version3 --enable-iconv --enable-zlib --extra-cflags='-I/usr/local/lame/include -I/usr/local/libogg/include -I/usr/local/amr/include' --extra-ldflags='-L/usr/local/lame/lib -L/usr/local/libogg/lib -L/usr/local/amr/lib' --cross-prefix=x86_64-w64-mingw32- --target-os=mingw32
复制代码
(4)运行下面下令编译FFmpeg。
make clean
make -j4
复制代码
(5)执行下面下令安装FFmpeg。
make install
mv /usr/local/ffmpeg/bin/*.lib /usr/local/ffmpeg/lib/
复制代码
(6)运行以下下令检察FFmpeg的版本信息。
ffmpeg -version
复制代码
检察控制台回显的FFmpeg版本信息,找到“--enable-libvorbis --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-version3”,说明FFmpeg正确启用了新增的音频格式ogg和amr。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/)
Powered by Discuz! X3.4