ffmpeg执行时如添加参数-vcodec libx264,会出现错误:Unknown encoder “libx264”的错误,缺少libx264库,需要安装该库
安装nasm NASM(Netwide Assembler)是一个开源的汇编器,专门用于x86架构的汇编语言编程。
它支持多种目标文件格式,包括ELF、COFF、OMF、a.out、Mach-O等,适用于16位、32位和64位代码的编译。NASM使用Intel语法,与AT&T语法的汇编器(如GNU汇编器)不同。
NASM的主要特点包括:
语法简洁:采用类似于Intel的语法,易于编写和阅读。 多平台支持:可以在多种操作系统上运行,包括Linux、Windows、DOS等。 模块化设计:支持宏和模块化编程,增强代码的可维护性和复用性。 输出格式多样:可以生成多种目标文件格式,适合不同的开发需求。
安装命令:
下载源代码
wget https://www.nasm.us/pub/nasm/releasebuilds/2.14/nasm-2.14.tar.gz
解压
tar -zxvf nasm-2.14.tar.gz
编译安装
cd nasm-2.14 ./configure make && make install
测试
nasm -v
x264 安装 x264 是一款开源的 H.264/AVC 视频编码器。
下载源代码
git clone https://code.videolan.org/videolan/x264.git
编译安装
cd x264 ./configure –prefix=/usr/x264/ –includedir=/usr/local/include –libdir=/usr/local/lib –enable-shared make && make install
配置环境变量
vim ~/.bashrc export PATH=“/usr/local/nasm/bin:\(PATH" export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:\)PKG_CONFIG_PATH source ~/.bashrc
安装结果
pkg-config –libs x264 安装 ffmpeg
下载源代码
wget https://ffmpeg.org//releases/ffmpeg-6.1.tar.gz
编译安装
cd ffmpeg-6.1 ./configure –enable-gpl –enable-libx264 –enable-shared –extra-ldflags=-L/usr/local/lib –extra-cflags=-I/usr/local/include make && make install
配置环境变量
vi /etc/profile export PATH=$PATH:/usr/local/ffmpeg/bin
卸载移除ffmpeg:
停止ffmpeg进程
pkill ffmpeg
卸载ffmpeg
sudo yum remove ffmpeg
删除ffmpeg的配置文件和数据
rm -rf /usr/local/etc/ffmpeg /usr/local/share/ffmpeg /usr/local/share/doc/ffmpeg /usr/local/share/man/man1/ffmpeg*
问题记录 ffmpeg: error while loading shared libraries: libavdevice.so.60: cannot open shared object file: No such file or directory。
当安装或更新共享库时,需要运行 ldconfig 来更新缓存。ldconfig 是 Linux 系统中的一个工具,用于管理动态链接库(shared libraries)的缓存。它主要负责更新和维护 /etc/ld.so.conf 文件中指定的库路径,并将这些路径中的共享库信息缓存到 /etc/ld.so.cache 文件中。这个缓存文件被动态链接器(ld.so 或 ld-linux.so)用来快速查找和加载所需的共享库。