【FFmpeg】ffmpeg 命令查询一 ( 版本 | 编译配置 | 复用格式 | 编解码器 )(一)

简介: 【FFmpeg】ffmpeg 命令查询一 ( 版本 | 编译配置 | 复用格式 | 编解码器 )(一)

文章目录

FFmpeg 系列文章目录

一、FFmpeg 帮助信息

二、显示版本信息 -version

三、ffmpeg 命令输出的固定信息

四、显示编译配置信息 -buildconf

五、显示可用格式 -formats

1、基础命令

2、查询指定格式信息

六、显示可用复用器 -muxers

1、基础命令

2、查询指定格式信息

七、显示可用解复用器 -demuxers

1、基础命令

2、查询指定格式信息

八、显示可用设备 -devices

九、显示可用的编解码器 -codecs

1、基本指令

2、查询 H.264 编解码器信息

十、显示可用的解码器 -decoders

十一、显示可用的编码器 -encoders

十二、命令行分页显示 " | more"




一、FFmpeg 帮助信息


在 【FFmpeg】FFmpeg 帮助文档使用 博客中使用


ffmpeg -h


命令 , 可以在命令行输出 ffmpeg 基本命令帮助信息 , 其中打印出了如下几项信息 , 下面介绍下比较重要的几个配置选项 ;


Print help / information / capabilities:
-L                  show license // 显示许可信息 
-h topic            show help // 显示帮助信息
-? topic            show help // 显示帮助信息
-help topic         show help // 显示帮助信息
--help topic        show help // 显示帮助信息
-version            show version // 显示版本    
-buildconf          show build configuration // 显示编译配置
-formats            show available formats // 显示可用格式 , 其等价于 muxers + demuxers 组合 
-muxers             show available muxers // 显示可用的复用器
-demuxers           show available demuxers // 显示可用的解复用器
-devices            show available devices // 显示可用设备
-codecs             show available codecs // 显示可用的编解码器 , 其等价于 encoders + decoders 组合
-decoders           show available decoders // 显示可用的解码器
-encoders           show available encoders // 显示可用的编码器
-bsfs               show available bit stream filters // 显示可用的比特流 filters 过滤器 
-protocols          show available protocols // 显示可用协议 , 如 rtmp , rtsp 等 ; 
-filters            show available filters // 显示可用的过滤器 , 可用于 : 改变播放速度 , 加水印 , 加 Logo 
-pix_fmts           show available pixel formats // 显示可用的像素格式
-layouts            show standard channel layouts // 显示标准声道名称 
-sample_fmts        show available audio sample formats // 显示可用的音频采样格式 
-colors             show available color names // 显示可用的颜色名称 
-sources device     list sources of the input device // 列出输入设备来源 
-sinks device       list sinks of the output device // 列出输出设备接收器
-hwaccels           show available HW acceleration methods // 显示可用的硬件加速方法




二、显示版本信息 -version


帮助文档对应内容 :


-version            show version // 显示版本



显示版本信息命令 :


ffmpeg -version



执行过程 : 打印出的版本号是 ffmpeg version n4.4-19-g8d172d9409 ;

image.png



命令行输出 :


D:\ffmpeg>ffmpeg -version
ffmpeg version n4.4-19-g8d172d9409 Copyright (c) 2000-2021 the FFmpeg developers
built with gcc 10-win32 (GCC) 20210408
configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static --pkg-config=pkg-config --cross-prefix=x86_64-w64-mingw32- --arch=x86_64 --target-os=mingw32 --enable-gpl --enable-version3 --disable-debug --enable-shared --disable-static --disable-w32threads --enable-pthreads --enable-iconv --enable-libxml2 --enable-zlib --enable-libfreetype --enable-libfribidi --enable-gmp --enable-lzma --enable-fontconfig --enable-libvorbis --enable-opencl --enable-libvmaf --enable-vulkan --enable-amf --enable-libaom --enable-avisynth --enable-libdav1d --enable-libdavs2 --enable-ffnvcodec --enable-cuda-llvm --enable-libglslang --enable-libgme --enable-libass --enable-libbluray --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvpx --enable-libwebp --enable-lv2 --enable-libmfx --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librav1e --enable-librubberband --enable-schannel --enable-sdl2 --enable-libsoxr --enable-libsrt --enable-libsvtav1 --enable-libtwolame --enable-libuavs3d --enable-libvidstab --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libzimg --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-ldflags=-pthread --extra-ldexeflags= --extra-libs=-lgomp
libavutil      56. 70.100 / 56. 70.100
libavcodec     58.134.100 / 58.134.100
libavformat    58. 76.100 / 58. 76.100
libavdevice    58. 13.100 / 58. 13.100
libavfilter     7.110.100 /  7.110.100
libswscale      5.  9.100 /  5.  9.100
libswresample   3.  9.100 /  3.  9.100
libpostproc    55.  9.100 / 55.  9.100



三、ffmpeg 命令输出的固定信息


关于 ffmpeg 不管执行什么命令 , 都会打印出当前的以下信息 :


版本号信息 ffmpeg version n4.4-19-g8d172d9409

版权信息 Copyright

编译器信息 built with gcc 10-win32 (GCC) 20210408

编译配置信息 configuration:

各个库的版本信息如下


libavutil      56. 70.100 / 56. 70.100
libavcodec     58.134.100 / 58.134.100
libavformat    58. 76.100 / 58. 76.100
libavdevice    58. 13.100 / 58. 13.100
libavfilter     7.110.100 /  7.110.100
libswscale      5.  9.100 /  5.  9.100
libswresample   3.  9.100 /  3.  9.100
libpostproc    55.  9.100 / 55.  9.100





四、显示编译配置信息 -buildconf


帮助文档对应内容 :


-buildconf          show build configuration // 显示编译配置



显示编译配置信息命令 : FFmpeg 进行编译时 , 先配置 configure 文件 , 然后根据 configure 配置生成 Makefile 文件 , 再执行编译操作 ;


ffmpeg -buildconf



执行过程 : 打印出的编译时的 configure 配置信息 ;


image.png


命令行输出 :


D:\ffmpeg>ffmpeg -buildconf
ffmpeg version n4.4-19-g8d172d9409 Copyright (c) 2000-2021 the FFmpeg developers
  built with gcc 10-win32 (GCC) 20210408
  configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static --pkg-config=pkg-config --cross-prefix=x86_64-w64-mingw32- --arch=x86_64 --target-os=mingw32 --enable-gpl --enable-version3 --disable-debug --enable-shared --disable-static --disable-w32threads --enable-pthreads --enable-iconv --enable-libxml2 --enable-zlib --enable-libfreetype --enable-libfribidi --enable-gmp --enable-lzma --enable-fontconfig --enable-libvorbis --enable-opencl --enable-libvmaf --enable-vulkan --enable-amf --enable-libaom --enable-avisynth --enable-libdav1d --enable-libdavs2 --enable-ffnvcodec --enable-cuda-llvm --enable-libglslang --enable-libgme --enable-libass --enable-libbluray --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvpx --enable-libwebp --enable-lv2 --enable-libmfx --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librav1e --enable-librubberband --enable-schannel --enable-sdl2 --enable-libsoxr --enable-libsrt --enable-libsvtav1 --enable-libtwolame --enable-libuavs3d --enable-libvidstab --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libzimg --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-ldflags=-pthread --extra-ldexeflags= --extra-libs=-lgomp
  libavutil      56. 70.100 / 56. 70.100
  libavcodec     58.134.100 / 58.134.100
  libavformat    58. 76.100 / 58. 76.100
  libavdevice    58. 13.100 / 58. 13.100
  libavfilter     7.110.100 /  7.110.100
  libswscale      5.  9.100 /  5.  9.100
  libswresample   3.  9.100 /  3.  9.100
  libpostproc    55.  9.100 / 55.  9.100
  configuration:
    --prefix=/ffbuild/prefix
    --pkg-config-flags=--static
    --pkg-config=pkg-config --cross-prefix=x86_64-w64-mingw32-
    --arch=x86_64
    --target-os=mingw32
    --enable-gpl
    --enable-version3
    --disable-debug
    --enable-shared
    --disable-static
    --disable-w32threads
    --enable-pthreads
    --enable-iconv
    --enable-libxml2
    --enable-zlib
    --enable-libfreetype
    --enable-libfribidi
    --enable-gmp
    --enable-lzma
    --enable-fontconfig
    --enable-libvorbis
    --enable-opencl
    --enable-libvmaf
    --enable-vulkan
    --enable-amf
    --enable-libaom
    --enable-avisynth
    --enable-libdav1d
    --enable-libdavs2
    --enable-ffnvcodec
    --enable-cuda-llvm
    --enable-libglslang
    --enable-libgme
    --enable-libass
    --enable-libbluray
    --enable-libmp3lame
    --enable-libopus
    --enable-libtheora
    --enable-libvpx
    --enable-libwebp
    --enable-lv2
    --enable-libmfx
    --enable-libopencore-amrnb
    --enable-libopencore-amrwb
    --enable-libopenjpeg
    --enable-librav1e
    --enable-librubberband
    --enable-schannel
    --enable-sdl2
    --enable-libsoxr
    --enable-libsrt
    --enable-libsvtav1
    --enable-libtwolame
    --enable-libuavs3d
    --enable-libvidstab
    --enable-libx264
    --enable-libx265
    --enable-libxavs2
    --enable-libxvid
    --enable-libzimg
    --extra-cflags=-DLIBTWOLAME_STATIC
    --extra-cxxflags=
    --extra-ldflags=-pthread
    --extra-ldexeflags=
    --extra-libs=-lgomp
D:\ffmpeg>




上述的 configuration: 后面的一行配置 与 ffmpeg -buildconf 打印出来的内容是一样的 ,


各个模块都编译成动态库 , 不支持静态库 ;


 

--enable-shared
    --disable-static


支持 sdl2 , 这是做播放显示用的 ;


 

--enable-sdl2


支持 H.264 , H.265 编码 :


 

--enable-libx264
    --enable-libx265


目录
相关文章
|
10月前
|
Ubuntu 开发工具 git
Ubuntu编译ffmpeg解决错误:ERROR: avisynth/avisynth_c.h not found
通过本文的详细指导,您可以顺利地在Ubuntu系统上配置和编译FFmpeg,并解决Avisynth头文件缺失的问题。
426 27
|
缓存 并行计算 Ubuntu
Jetson 学习笔记(十一):jetson agx xavier 源码编译ffmpeg(3.4.1)和opencv(3.4.0)
本文是关于在Jetson AGX Xavier上编译FFmpeg(3.4.1)和OpenCV(3.4.0)的详细教程,包括编译需求、步骤、测试和可能遇到的问题及其解决方案。还提供了Jetson AGX Xavier编译CUDA版本的OpenCV 4.5.0的相关信息。
434 4
Jetson 学习笔记(十一):jetson agx xavier 源码编译ffmpeg(3.4.1)和opencv(3.4.0)
|
Ubuntu 应用服务中间件 nginx
Ubuntu安装笔记(三):ffmpeg(3.2.16)源码编译opencv(3.4.0)
本文是关于Ubuntu系统中使用ffmpeg 3.2.16源码编译OpenCV 3.4.0的安装笔记,包括安装ffmpeg、编译OpenCV、卸载OpenCV以及常见报错处理。
840 2
Ubuntu安装笔记(三):ffmpeg(3.2.16)源码编译opencv(3.4.0)
|
Linux API 开发工具
FFmpeg开发笔记(五十九)Linux编译ijkplayer的Android平台so库
ijkplayer是由B站研发的移动端播放器,基于FFmpeg 3.4,支持Android和iOS。其源码托管于GitHub,截至2024年9月15日,获得了3.24万星标和0.81万分支,尽管已停止更新6年。本文档介绍了如何在Linux环境下编译ijkplayer的so库,以便在较新的开发环境中使用。首先需安装编译工具并调整/tmp分区大小,接着下载并安装Android SDK和NDK,最后下载ijkplayer源码并编译。详细步骤包括环境准备、工具安装及库编译等。更多FFmpeg开发知识可参考相关书籍。
435 0
FFmpeg开发笔记(五十九)Linux编译ijkplayer的Android平台so库
FFmpeg学习笔记(二):多线程rtsp推流和ffplay拉流操作,并储存为多路avi格式的视频
这篇博客主要介绍了如何使用FFmpeg进行多线程RTSP推流和ffplay拉流操作,以及如何将视频流保存为多路AVI格式的视频文件。
1258 0
|
达摩院 语音技术 异构计算
语音识别-免费开源的语音转文本软件Whisper的本地搭建详细教程,python版本是3.805,ffmpeg是专门处理音视频的,ffmpeg的下载链接,现在要求安装python和ffmpeg
语音识别-免费开源的语音转文本软件Whisper的本地搭建详细教程,python版本是3.805,ffmpeg是专门处理音视频的,ffmpeg的下载链接,现在要求安装python和ffmpeg
|
编解码 Linux 计算机视觉
python 调用ffmpeg使用usb摄像头录制视频,输出h264格式,自动获取摄像头的最佳帧率和最大画面尺寸
使用 Python 调用 FFmpeg 进行 USB 摄像头视频录制,需先确保安装 FFmpeg 和 Python 的 `subprocess` 模块。代码示例展示了如何自动获取摄像头的最佳帧率和最大分辨率,然后录制视频。首先通过 FFmpeg 列出摄像头格式获取信息,解析出帧率和分辨率,选择最优值。之后调用 FFmpeg 命令录制视频,设置帧率、分辨率等参数。注意 `/dev/video0` 是 Linux 的摄像头设备路径,Windows 系统需相应调整。代码中未直接实现自动获取最佳参数,通常需要借助其他库如 OpenCV。
|
Linux 开发工具
Linux下视频截取命令 使用【ffmpeg】使用
Linux下视频截取命令 使用【ffmpeg】使用
153 1
|
编解码 安全 计算机视觉
FFMPEG常用命令 音视频合并
FFMPEG常用命令 音视频合并
648 2