【ffmpeg命令】ffmpeg通用选项-前言

FFmpeg 是一个开源的多媒体框架,能够处理音频、视频以及其他多媒体文件和流的记录、转换和播放。它提供了一系列强大的命令行工具,如 ffmpeg、ffplay 和 ffprobe,用于各种多媒体操作。理解和掌握 FFmpeg 的通用选项是高效使用这些工具的关键。本文将详细介绍 FFmpeg 的各种通用选项,帮助用户更好地利用这一强大的工具来完成复杂的多媒体处理任务。


显示信息和帮助

  • -L: 显示许可证信息。
  • -h, -?, -help, --help [arg]: 显示帮助信息。如果没有参数,显示基本选项;如果有参数,可以显示特定项目的帮助信息。
    • long: 显示高级工具选项。

    • full: 显示完整的选项列表,包括编码器、解码器、复用器等。

    • decoder=decoder_name: 显示指定解码器的详细信息。

    • encoder=encoder_name: 显示指定编码器的详细信息。

    • demuxer=demuxer_name: 显示指定解复用器的详细信息。

      • encoder与demuxer可以用c:v xxx来代替
    • muxer=muxer_name: 显示指定复用器的详细信息。

    • filter=filter_name: 显示指定过滤器的详细信息。

    • bsf=bitstream_filter_name: 显示指定比特流过滤器的详细信息。

    • protocol=protocol_name: 显示指定协议的详细信息。

版本和配置

  • -version: 显示版本信息。
  • -buildconf: 显示编译配置,每行一个选项。

显示可用的格式、设备和编码器等

  • -formats: 显示可用的格式(包括设备)。
  • -demuxers: 显示可用的解复用器。
  • -muxers: 显示可用的复用器。
  • -devices: 显示可用的设备。
  • -codecs: 显示所有已知的编解码器。
  • -decoders: 显示可用的解码器。
  • -encoders: 显示可用的编码器。
  • -bsfs: 显示可用的比特流过滤器。
  • -protocols: 显示可用的协议。
  • -filters: 显示可用的 libavfilter 过滤器。
  • -pix_fmts: 显示可用的像素格式。
  • -sample_fmts: 显示可用的采样格式。
  • -layouts: 显示声道名称和标准声道布局。
  • -dispositions: 显示流的状态。
  • -colors: 显示识别的颜色名称。

自动检测源和接收器

  • -sources device[,opt1=val1[,opt2=val2]…]: 显示输入设备的自动检测源。
  • -sinks device[,opt1=val1[,opt2=val2]…]: 显示输出设备的自动检测接收器。

日志和报告

  • -loglevel [flags+]loglevel | -v [flags+]loglevel: 设置日志级别和标志。
    • quiet, -8: 不显示任何内容,保持静默。
    • panic, 0: 只显示可能导致进程崩溃的致命错误。
    • fatal, 8: 只显示致命错误,进程无法继续时的错误。
    • error, 16: 显示所有错误,包括可恢复的错误。
    • warning, 24: 显示所有警告和错误。
    • info, 32: 显示处理过程中的信息性消息,这是默认值。
    • verbose, 40: 和 info 相同,但更详细。
    • debug, 48: 显示所有内容,包括调试信息。
    • trace, 56: *别的日志,显示所有可能的信息。
  • -report: 将完整的命令行和日志输出转储到当前目录中的文件。用于调试和报告问题。
  • -hide_banner: 隐藏版权声明、构建选项和库版本信息的横幅。

CPU 设置

  • -cpuflags flags: 设置或清除 CPU 标志。用于测试,不建议随意使用。
  • -cpucount count: 覆盖检测到的 CPU 数量。用于测试。
  • -max_alloc bytes: 设置堆上分配块的最大大小。谨慎使用,默认值为 INT_MAX。

上一篇:ETL数据集成丨通过ETLCloud工具,将Oracle数据实时同步至Doris中