FFmpeg的configure
脚本提供了许多选项来自定义编译过程,包括启用或禁用特定的功能、编解码器、库、协议等。以下是一些常见的configure
选项,您可以根据需要添加到配置命令中:
-
通用选项:
--enable-shared
: 启用构建共享库(.so 文件)。--enable-static
: 启用构建静态库(.a 文件)。--disable-optimizations
: 禁用编译优化。--enable-debug
: 启用调试模式。
-
外部库和框架:
--enable-libx264
: 启用 H.264 编码支持(使用 libx264)。--enable-libx265
: 启用 H.265 编码支持(使用 libx265)。--enable-libvpx
: 启用 VP8 和 VP9 编码支持(使用 libvpx)。--enable-libmp3lame
: 启用 MP3 编码支持(使用 LAME)。--enable-libfdk-aac
: 启用 AAC 编码支持(使用 Fraunhofer FDK AAC)。
-
编解码器和协议:
--enable-protocol=xxx
: 启用特定的网络协议,例如file
,http
,rtmp
等。--enable-encoder=xxx
: 启用特定的编码器,例如libx264
,libvpx
等。--enable-decoder=xxx
: 启用特定的解码器。
-
过滤器:
--enable-filter=xxx
: 启用特定的过滤器,例如delogo
。
-
特定功能:
--enable-alsa
: 启用 ALSA 音频接口支持。--enable-libv4l2
: 启用 V4L2 视频设备支持。
-
其他:
--enable-version3
: 启用 FFmpeg API 版本 3。--enable-nonfree
: 启用非自由编解码器和工具。--enable-gpl
: 启用 GPL 许可下的编解码器。--enable-libspeex
: 启用 Speex 编码支持。--enable-pthreads
: 启用 POSIX 线程支持。
-
安装目录:
--prefix=/usr/local/ffmpeg
: 设置安装目录。
-
其他选项:
--enable-small
: 优化生成的程序大小。--enable-runtime-cpudetect
: 允许在运行时检测 CPU 功能。--enable-neon
: 对 ARM 架构启用 NEON 指令集。
要查看 FFmpeg 的configure
脚本支持的所有选项,您可以运行:
./configure --help
这将列出所有可用的选项及其描述。您可以根据输出中的信息来选择您需要的选项。
在添加这些选项时,请确保您的系统已经安装了所有必要的依赖项。某些选项可能需要特定的库或开发头文件。您可以使用您的系统的包管理器(如apt-get
、yum
等)来安装这些依赖。
以下是我configure时使用的命令
./configure --prefix=/usr/local/ffmpeg/ \
--enable-shared \
--enable-gpl \
--enable-nonfree \
--enable-libfdk-aac \
--enable-libmp3lame \
--enable-libx264 \
--enable-libx265 \
--enable-filter=delogo \
--enable-debug \
--disable-optimizations \
--enable-libspeex \
--enable-pthreads \
--enable-version3 \
--enable-hardcoded-tables \
--enable-libv4l2 \
--enable-alsa \
--enable-protocol=file,http,rtmp