DEV Community

૮༼⚆︿⚆༽つ
૮༼⚆︿⚆༽つ

Posted on

List of helpful FFMPEG command for checking capabilities

A lot of FFMPEG options are not in the documentations and only available to the specific build, hardware acceleration, or codecs. So I need a list of commands on how to show and search all available settings and options.

1. List all possible options of -filter_complex and -vf filter graph

ffmpeg -hide_banner -filters
Enter fullscreen mode Exit fullscreen mode
Filters:
 A = Audio input/output
 V = Video input/output
 N = Dynamic number and/or type of input/output
 | = Source or sink filter

 T.. = Timeline support
 .S. = Slice threading
 ..C = Command support
 ---
 ... filter_name            N->N       Description.
Enter fullscreen mode Exit fullscreen mode
1.2 Check filter details
ffmpeg -hide_banner -h filter=$fname
Enter fullscreen mode Exit fullscreen mode
Filter lowpass
  Description.
    Inputs:
       … (…)
    Outputs:
       … (…)
lowpass AVOptions:
  options         <type>     ..F....... Description (default or range value)
Enter fullscreen mode Exit fullscreen mode

2. List all hardware acceleration

ffmpeg -hide_banner -hwaccels
Enter fullscreen mode Exit fullscreen mode
Hardware acceleration methods:
vdpau
cuda
vaapi
qsv
drm
Enter fullscreen mode Exit fullscreen mode

3. List all encoders and/or decoders

ffmpeg -hide_banner -encoders
ffmpeg -hide_banner -decoders
Enter fullscreen mode Exit fullscreen mode
Encoders/Decoders:
 V..... = Video
 A..... = Audio
 S..... = Subtitle
 .F.... = Frame-level multithreading
 ..S... = Slice-level multithreading
 ...X.. = Codec is experimental
 ....B. = Supports draw_horiz_band
 .....D = Supports direct rendering method 1
 ------
 ...... cname_hwaccel                 Description
Enter fullscreen mode Exit fullscreen mode
3.0 List all codecs
ffmpeg -hide_banner -codecs
Enter fullscreen mode Exit fullscreen mode
Codecs:
 D..... = Decoding supported
 .E.... = Encoding supported
 ..V... = Video codec
 ..A... = Audio codec
 ..S... = Subtitle codec
 ...I.. = Intra frame-only codec
 ....L. = Lossy compression
 .....S = Lossless compression
 ------
 ...... cname_hwaccel                 Description
Enter fullscreen mode Exit fullscreen mode
3.1 Check encoders details

(can list multiple encoders depend on hardware acceleration you have)

ffmpeg -hide_banner -h encoder=$cname_hwaccel
Enter fullscreen mode Exit fullscreen mode
Encoder libname [Description]:
    General capabilities: delay threads 
    Threading capabilities: auto
    Supported pixel formats: … … …
libname AVOptions:
  -option            <type>     .......... Description (default or range value)

 codec_name configuration using a :-separated list of key=value parameters


Encoder cname_hwaccel [Description]:
    General capabilities: delay hardware 
    Threading capabilities: none
    Supported hardware devices: …
    Supported pixel formats: … …
cname_hwaccel AVOptions:
  -option             <type>        E......... Description (default or range value)
Enter fullscreen mode Exit fullscreen mode
3.2 Check decoder details
ffmpeg -hide_banner -h decoder=$cname
Enter fullscreen mode Exit fullscreen mode
Decoder cname [Description]:
    General capabilities: dr1 delay threads 
    Threading capabilities: frame and slice
    Supported hardware devices: … … … 
cname Decoder AVOptions:
  -option         <type>    .D........ Description (default or range value)
Enter fullscreen mode Exit fullscreen mode

Top comments (0)