Skip to content

Instantly share code, notes, and snippets.

@andreweon
Forked from nico-lab/h264_nvenc.txt
Created May 14, 2020 03:30
Show Gist options
  • Select an option

  • Save andreweon/f7847af10af1869bf3c269bb444c152f to your computer and use it in GitHub Desktop.

Select an option

Save andreweon/f7847af10af1869bf3c269bb444c152f to your computer and use it in GitHub Desktop.

Revisions

  1. @nico-lab nico-lab revised this gist Oct 20, 2019. 1 changed file with 91 additions and 90 deletions.
    181 changes: 91 additions & 90 deletions h264_nvenc
    Original file line number Diff line number Diff line change
    @@ -3,93 +3,94 @@ Encoder h264_nvenc [NVIDIA NVENC H.264 encoder]:
    Threading capabilities: none
    Supported pixel formats: yuv420p nv12 p010le yuv444p p016le yuv444p16le bgr0 rgb0 cuda d3d11
    h264_nvenc AVOptions:
    -preset <int> E..V..... Set the encoding preset (from 0 to 11) (default medium)
    default E..V.....
    slow E..V..... hq 2 passes
    medium E..V..... hq 1 pass
    fast E..V..... hp 1 pass
    hp E..V.....
    hq E..V.....
    bd E..V.....
    ll E..V..... low latency
    llhq E..V..... low latency hq
    llhp E..V..... low latency hp
    lossless E..V.....
    losslesshp E..V.....
    -profile <int> E..V..... Set the encoding profile (from 0 to 3) (default main)
    baseline E..V.....
    main E..V.....
    high E..V.....
    high444p E..V.....
    -level <int> E..V..... Set the encoding level restriction (from 0 to 51) (default auto)
    auto E..V.....
    1 E..V.....
    1.0 E..V.....
    1b E..V.....
    1.0b E..V.....
    1.1 E..V.....
    1.2 E..V.....
    1.3 E..V.....
    2 E..V.....
    2.0 E..V.....
    2.1 E..V.....
    2.2 E..V.....
    3 E..V.....
    3.0 E..V.....
    3.1 E..V.....
    3.2 E..V.....
    4 E..V.....
    4.0 E..V.....
    4.1 E..V.....
    4.2 E..V.....
    5 E..V.....
    5.0 E..V.....
    5.1 E..V.....
    -rc <int> E..V..... Override the preset rate-control (from -1 to INT_MAX) (default -1)
    constqp E..V..... Constant QP mode
    vbr E..V..... Variable bitrate mode
    cbr E..V..... Constant bitrate mode
    vbr_minqp E..V..... Variable bitrate mode with MinQP (deprecated)
    ll_2pass_quality E..V..... Multi-pass optimized for image quality (deprecated)
    ll_2pass_size E..V..... Multi-pass optimized for constant frame size (deprecated)
    vbr_2pass E..V..... Multi-pass variable bitrate mode (deprecated)
    cbr_ld_hq E..V..... Constant bitrate low delay high quality mode
    cbr_hq E..V..... Constant bitrate high quality mode
    vbr_hq E..V..... Variable bitrate high quality mode
    -rc-lookahead <int> E..V..... Number of frames to look ahead for rate-control (from 0 to INT_MAX) (default 0)
    -surfaces <int> E..V..... Number of concurrent surfaces (from 0 to 64) (default 0)
    -cbr <boolean> E..V..... Use cbr encoding mode (default false)
    -2pass <boolean> E..V..... Use 2pass encoding mode (default auto)
    -gpu <int> E..V..... Selects which NVENC capable GPU to use. First GPU is 0, second is 1, and so on. (from -2 to INT_MAX) (default any)
    any E..V..... Pick the first device available
    list E..V..... List the available devices
    -delay <int> E..V..... Delay frame output by the given amount of frames (from 0 to INT_MAX) (default INT_MAX)
    -no-scenecut <boolean> E..V..... When lookahead is enabled, set this to 1 to disable adaptive I-frame insertion at scene cuts (default false)
    -forced-idr <boolean> E..V..... If forcing keyframes, force them as IDR frames. (default false)
    -b_adapt <boolean> E..V..... When lookahead is enabled, set this to 0 to disable adaptive B-frame decision (default true)
    -spatial-aq <boolean> E..V..... set to 1 to enable Spatial AQ (default false)
    -temporal-aq <boolean> E..V..... set to 1 to enable Temporal AQ (default false)
    -zerolatency <boolean> E..V..... Set 1 to indicate zero latency operation (no reordering delay) (default false)
    -nonref_p <boolean> E..V..... Set this to 1 to enable automatic insertion of non-reference P-frames (default false)
    -strict_gop <boolean> E..V..... Set 1 to minimize GOP-to-GOP rate fluctuations (default false)
    -aq-strength <int> E..V..... When Spatial AQ is enabled, this field is used to specify AQ strength. AQ strength scale is from 1 (low) - 15 (aggressive) (from 1 to 15) (default 8)
    -cq <float> E..V..... Set target quality level (0 to 51, 0 means automatic) for constant quality mode in VBR rate control (from 0 to 51) (default 0)
    -aud <boolean> E..V..... Use access unit delimiters (default false)
    -bluray-compat <boolean> E..V..... Bluray compatibility workarounds (default false)
    -init_qpP <int> E..V..... Initial QP value for P frame (from -1 to 51) (default -1)
    -init_qpB <int> E..V..... Initial QP value for B frame (from -1 to 51) (default -1)
    -init_qpI <int> E..V..... Initial QP value for I frame (from -1 to 51) (default -1)
    -qp <int> E..V..... Constant quantization parameter rate control method (from -1 to 51) (default -1)
    -weighted_pred <int> E..V..... Set 1 to enable weighted prediction (from 0 to 1) (default 0)
    -coder <int> E..V..... Coder type (from -1 to 2) (default default)
    default E..V.....
    auto E..V.....
    cabac E..V.....
    cavlc E..V.....
    ac E..V.....
    vlc E..V.....
    -b_ref_mode <int> E..V..... Use B frames as references (from 0 to 2) (default disabled)
    disabled E..V..... B frames will not be used for reference
    each E..V..... Each B frame will be used for reference
    middle E..V..... Only (number of B frames)/2 will be used for reference
    -a53cc <boolean> E..V..... Use A53 Closed Captions (if available) (default true)
    -preset <int> E..V...... Set the encoding preset (from 0 to 11) (default medium)
    default 0 E..V......
    slow 1 E..V...... hq 2 passes
    medium 2 E..V...... hq 1 pass
    fast 3 E..V...... hp 1 pass
    hp 4 E..V......
    hq 5 E..V......
    bd 6 E..V......
    ll 7 E..V...... low latency
    llhq 8 E..V...... low latency hq
    llhp 9 E..V...... low latency hp
    lossless 10 E..V......
    losslesshp 11 E..V......
    -profile <int> E..V...... Set the encoding profile (from 0 to 3) (default main)
    baseline 0 E..V......
    main 1 E..V......
    high 2 E..V......
    high444p 3 E..V......
    -level <int> E..V...... Set the encoding level restriction (from 0 to 51) (default auto)
    auto 0 E..V......
    1 10 E..V......
    1.0 10 E..V......
    1b 9 E..V......
    1.0b 9 E..V......
    1.1 11 E..V......
    1.2 12 E..V......
    1.3 13 E..V......
    2 20 E..V......
    2.0 20 E..V......
    2.1 21 E..V......
    2.2 22 E..V......
    3 30 E..V......
    3.0 30 E..V......
    3.1 31 E..V......
    3.2 32 E..V......
    4 40 E..V......
    4.0 40 E..V......
    4.1 41 E..V......
    4.2 42 E..V......
    5 50 E..V......
    5.0 50 E..V......
    5.1 51 E..V......
    -rc <int> E..V...... Override the preset rate-control (from -1 to INT_MAX) (default -1)
    constqp 0 E..V...... Constant QP mode
    vbr 1 E..V...... Variable bitrate mode
    cbr 2 E..V...... Constant bitrate mode
    vbr_minqp 8388612 E..V...... Variable bitrate mode with MinQP (deprecated)
    ll_2pass_quality 8388616 E..V...... Multi-pass optimized for image quality (deprecated)
    ll_2pass_size 8388624 E..V...... Multi-pass optimized for constant frame size (deprecated)
    vbr_2pass 8388640 E..V...... Multi-pass variable bitrate mode (deprecated)
    cbr_ld_hq 8 E..V...... Constant bitrate low delay high quality mode
    cbr_hq 16 E..V...... Constant bitrate high quality mode
    vbr_hq 32 E..V...... Variable bitrate high quality mode
    -rc-lookahead <int> E..V...... Number of frames to look ahead for rate-control (from 0 to INT_MAX) (default 0)
    -surfaces <int> E..V...... Number of concurrent surfaces (from 0 to 64) (default 0)
    -cbr <boolean> E..V...... Use cbr encoding mode (default false)
    -2pass <boolean> E..V...... Use 2pass encoding mode (default auto)
    -gpu <int> E..V...... Selects which NVENC capable GPU to use. First GPU is 0, second is 1, and so on. (from -2 to INT_MAX) (default any)
    any -1 E..V...... Pick the first device available
    list -2 E..V...... List the available devices
    -delay <int> E..V...... Delay frame output by the given amount of frames (from 0 to INT_MAX) (default INT_MAX)
    -no-scenecut <boolean> E..V...... When lookahead is enabled, set this to 1 to disable adaptive I-frame insertion at scene cuts (default false)
    -forced-idr <boolean> E..V...... If forcing keyframes, force them as IDR frames. (default false)
    -b_adapt <boolean> E..V...... When lookahead is enabled, set this to 0 to disable adaptive B-frame decision (default true)
    -spatial-aq <boolean> E..V...... set to 1 to enable Spatial AQ (default false)
    -temporal-aq <boolean> E..V...... set to 1 to enable Temporal AQ (default false)
    -zerolatency <boolean> E..V...... Set 1 to indicate zero latency operation (no reordering delay) (default false)
    -nonref_p <boolean> E..V...... Set this to 1 to enable automatic insertion of non-reference P-frames (default false)
    -strict_gop <boolean> E..V...... Set 1 to minimize GOP-to-GOP rate fluctuations (default false)
    -aq-strength <int> E..V...... When Spatial AQ is enabled, this field is used to specify AQ strength. AQ strength scale is from 1 (low) - 15 (aggressive) (from 1 to 15) (default 8)
    -cq <float> E..V...... Set target quality level (0 to 51, 0 means automatic) for constant quality mode in VBR rate control (from 0 to 51) (default 0)
    -aud <boolean> E..V...... Use access unit delimiters (default false)
    -bluray-compat <boolean> E..V...... Bluray compatibility workarounds (default false)
    -init_qpP <int> E..V...... Initial QP value for P frame (from -1 to 51) (default -1)
    -init_qpB <int> E..V...... Initial QP value for B frame (from -1 to 51) (default -1)
    -init_qpI <int> E..V...... Initial QP value for I frame (from -1 to 51) (default -1)
    -qp <int> E..V...... Constant quantization parameter rate control method (from -1 to 51) (default -1)
    -weighted_pred <int> E..V...... Set 1 to enable weighted prediction (from 0 to 1) (default 0)
    -coder <int> E..V...... Coder type (from -1 to 2) (default default)
    default -1 E..V......
    auto 0 E..V......
    cabac 1 E..V......
    cavlc 2 E..V......
    ac 1 E..V......
    vlc 2 E..V......
    -b_ref_mode <int> E..V...... Use B frames as references (from 0 to 2) (default disabled)
    disabled 0 E..V...... B frames will not be used for reference
    each 1 E..V...... Each B frame will be used for reference
    middle 2 E..V...... Only (number of B frames)/2 will be used for reference
    -a53cc <boolean> E..V...... Use A53 Closed Captions (if available) (default true)
    -dpb_size <int> E..V...... Specifies the DPB size used for encoding (0 means automatic) (from 0 to INT_MAX) (default 0)
  2. @nico-lab nico-lab revised this gist Nov 10, 2018. 1 changed file with 92 additions and 88 deletions.
    180 changes: 92 additions & 88 deletions h264_nvenc
    Original file line number Diff line number Diff line change
    @@ -1,91 +1,95 @@
    Encoder h264_nvenc [NVIDIA NVENC H.264 encoder]:
    General capabilities: delay
    General capabilities: delay hardware
    Threading capabilities: none
    Supported pixel formats: yuv420p nv12 p010le yuv444p yuv444p16le bgr0 rgb0 cuda d3d11
    Supported pixel formats: yuv420p nv12 p010le yuv444p p016le yuv444p16le bgr0 rgb0 cuda d3d11
    h264_nvenc AVOptions:
    -preset <int> E..V.... Set the encoding preset (from 0 to 11) (default medium)
    default E..V....
    slow E..V.... hq 2 passes
    medium E..V.... hq 1 pass
    fast E..V.... hp 1 pass
    hp E..V....
    hq E..V....
    bd E..V....
    ll E..V.... low latency
    llhq E..V.... low latency hq
    llhp E..V.... low latency hp
    lossless E..V....
    losslesshp E..V....
    -profile <int> E..V.... Set the encoding profile (from 0 to 3) (default main)
    baseline E..V....
    main E..V....
    high E..V....
    high444p E..V....
    -level <int> E..V.... Set the encoding level restriction (from 0 to 51) (default auto)
    auto E..V....
    1 E..V....
    1.0 E..V....
    1b E..V....
    1.0b E..V....
    1.1 E..V....
    1.2 E..V....
    1.3 E..V....
    2 E..V....
    2.0 E..V....
    2.1 E..V....
    2.2 E..V....
    3 E..V....
    3.0 E..V....
    3.1 E..V....
    3.2 E..V....
    4 E..V....
    4.0 E..V....
    4.1 E..V....
    4.2 E..V....
    5 E..V....
    5.0 E..V....
    5.1 E..V....
    -rc <int> E..V.... Override the preset rate-control (from -1 to INT_MAX) (default -1)
    constqp E..V.... Constant QP mode
    vbr E..V.... Variable bitrate mode
    cbr E..V.... Constant bitrate mode
    vbr_minqp E..V.... Variable bitrate mode with MinQP (deprecated)
    ll_2pass_quality E..V.... Multi-pass optimized for image quality (deprecated)
    ll_2pass_size E..V.... Multi-pass optimized for constant frame size (deprecated)
    vbr_2pass E..V.... Multi-pass variable bitrate mode (deprecated)
    cbr_ld_hq E..V.... Constant bitrate low delay high quality mode
    cbr_hq E..V.... Constant bitrate high quality mode
    vbr_hq E..V.... Variable bitrate high quality mode
    -rc-lookahead <int> E..V.... Number of frames to look ahead for rate-control (from 0 to INT_MAX) (default 0)
    -surfaces <int> E..V.... Number of concurrent surfaces (from 0 to 64) (default 0)
    -cbr <boolean> E..V.... Use cbr encoding mode (default false)
    -2pass <boolean> E..V.... Use 2pass encoding mode (default auto)
    -gpu <int> E..V.... Selects which NVENC capable GPU to use. First GPU is 0, second is 1, and so on. (from -2 to INT_MAX) (default any)
    any E..V.... Pick the first device available
    list E..V.... List the available devices
    -delay <int> E..V.... Delay frame output by the given amount of frames (from 0 to INT_MAX) (default INT_MAX)
    -no-scenecut <boolean> E..V.... When lookahead is enabled, set this to 1 to disable adaptive I-frame insertion at scene cuts (default false)
    -forced-idr <boolean> E..V.... If forcing keyframes, force them as IDR frames. (default false)
    -b_adapt <boolean> E..V.... When lookahead is enabled, set this to 0 to disable adaptive B-frame decision (default true)
    -spatial-aq <boolean> E..V.... set to 1 to enable Spatial AQ (default false)
    -temporal-aq <boolean> E..V.... set to 1 to enable Temporal AQ (default false)
    -zerolatency <boolean> E..V.... Set 1 to indicate zero latency operation (no reordering delay) (default false)
    -nonref_p <boolean> E..V.... Set this to 1 to enable automatic insertion of non-reference P-frames (default false)
    -strict_gop <boolean> E..V.... Set 1 to minimize GOP-to-GOP rate fluctuations (default false)
    -aq-strength <int> E..V.... When Spatial AQ is enabled, this field is used to specify AQ strength. AQ strength scale is from 1 (low) - 15 (aggressive) (from 1 to 15) (default 8)
    -cq <float> E..V.... Set target quality level (0 to 51, 0 means automatic) for constant quality mode in VBR rate control (from 0 to 51) (default 0)
    -aud <boolean> E..V.... Use access unit delimiters (default false)
    -bluray-compat <boolean> E..V.... Bluray compatibility workarounds (default false)
    -init_qpP <int> E..V.... Initial QP value for P frame (from -1 to 51) (default -1)
    -init_qpB <int> E..V.... Initial QP value for B frame (from -1 to 51) (default -1)
    -init_qpI <int> E..V.... Initial QP value for I frame (from -1 to 51) (default -1)
    -qp <int> E..V.... Constant quantization parameter rate control method (from -1 to 51) (default -1)
    -weighted_pred <int> E..V.... Set 1 to enable weighted prediction (from 0 to 1) (default 0)
    -coder <int> E..V.... Coder type (from -1 to 2) (default default)
    default E..V....
    auto E..V....
    cabac E..V....
    cavlc E..V....
    ac E..V....
    vlc E..V....

    -preset <int> E..V..... Set the encoding preset (from 0 to 11) (default medium)
    default E..V.....
    slow E..V..... hq 2 passes
    medium E..V..... hq 1 pass
    fast E..V..... hp 1 pass
    hp E..V.....
    hq E..V.....
    bd E..V.....
    ll E..V..... low latency
    llhq E..V..... low latency hq
    llhp E..V..... low latency hp
    lossless E..V.....
    losslesshp E..V.....
    -profile <int> E..V..... Set the encoding profile (from 0 to 3) (default main)
    baseline E..V.....
    main E..V.....
    high E..V.....
    high444p E..V.....
    -level <int> E..V..... Set the encoding level restriction (from 0 to 51) (default auto)
    auto E..V.....
    1 E..V.....
    1.0 E..V.....
    1b E..V.....
    1.0b E..V.....
    1.1 E..V.....
    1.2 E..V.....
    1.3 E..V.....
    2 E..V.....
    2.0 E..V.....
    2.1 E..V.....
    2.2 E..V.....
    3 E..V.....
    3.0 E..V.....
    3.1 E..V.....
    3.2 E..V.....
    4 E..V.....
    4.0 E..V.....
    4.1 E..V.....
    4.2 E..V.....
    5 E..V.....
    5.0 E..V.....
    5.1 E..V.....
    -rc <int> E..V..... Override the preset rate-control (from -1 to INT_MAX) (default -1)
    constqp E..V..... Constant QP mode
    vbr E..V..... Variable bitrate mode
    cbr E..V..... Constant bitrate mode
    vbr_minqp E..V..... Variable bitrate mode with MinQP (deprecated)
    ll_2pass_quality E..V..... Multi-pass optimized for image quality (deprecated)
    ll_2pass_size E..V..... Multi-pass optimized for constant frame size (deprecated)
    vbr_2pass E..V..... Multi-pass variable bitrate mode (deprecated)
    cbr_ld_hq E..V..... Constant bitrate low delay high quality mode
    cbr_hq E..V..... Constant bitrate high quality mode
    vbr_hq E..V..... Variable bitrate high quality mode
    -rc-lookahead <int> E..V..... Number of frames to look ahead for rate-control (from 0 to INT_MAX) (default 0)
    -surfaces <int> E..V..... Number of concurrent surfaces (from 0 to 64) (default 0)
    -cbr <boolean> E..V..... Use cbr encoding mode (default false)
    -2pass <boolean> E..V..... Use 2pass encoding mode (default auto)
    -gpu <int> E..V..... Selects which NVENC capable GPU to use. First GPU is 0, second is 1, and so on. (from -2 to INT_MAX) (default any)
    any E..V..... Pick the first device available
    list E..V..... List the available devices
    -delay <int> E..V..... Delay frame output by the given amount of frames (from 0 to INT_MAX) (default INT_MAX)
    -no-scenecut <boolean> E..V..... When lookahead is enabled, set this to 1 to disable adaptive I-frame insertion at scene cuts (default false)
    -forced-idr <boolean> E..V..... If forcing keyframes, force them as IDR frames. (default false)
    -b_adapt <boolean> E..V..... When lookahead is enabled, set this to 0 to disable adaptive B-frame decision (default true)
    -spatial-aq <boolean> E..V..... set to 1 to enable Spatial AQ (default false)
    -temporal-aq <boolean> E..V..... set to 1 to enable Temporal AQ (default false)
    -zerolatency <boolean> E..V..... Set 1 to indicate zero latency operation (no reordering delay) (default false)
    -nonref_p <boolean> E..V..... Set this to 1 to enable automatic insertion of non-reference P-frames (default false)
    -strict_gop <boolean> E..V..... Set 1 to minimize GOP-to-GOP rate fluctuations (default false)
    -aq-strength <int> E..V..... When Spatial AQ is enabled, this field is used to specify AQ strength. AQ strength scale is from 1 (low) - 15 (aggressive) (from 1 to 15) (default 8)
    -cq <float> E..V..... Set target quality level (0 to 51, 0 means automatic) for constant quality mode in VBR rate control (from 0 to 51) (default 0)
    -aud <boolean> E..V..... Use access unit delimiters (default false)
    -bluray-compat <boolean> E..V..... Bluray compatibility workarounds (default false)
    -init_qpP <int> E..V..... Initial QP value for P frame (from -1 to 51) (default -1)
    -init_qpB <int> E..V..... Initial QP value for B frame (from -1 to 51) (default -1)
    -init_qpI <int> E..V..... Initial QP value for I frame (from -1 to 51) (default -1)
    -qp <int> E..V..... Constant quantization parameter rate control method (from -1 to 51) (default -1)
    -weighted_pred <int> E..V..... Set 1 to enable weighted prediction (from 0 to 1) (default 0)
    -coder <int> E..V..... Coder type (from -1 to 2) (default default)
    default E..V.....
    auto E..V.....
    cabac E..V.....
    cavlc E..V.....
    ac E..V.....
    vlc E..V.....
    -b_ref_mode <int> E..V..... Use B frames as references (from 0 to 2) (default disabled)
    disabled E..V..... B frames will not be used for reference
    each E..V..... Each B frame will be used for reference
    middle E..V..... Only (number of B frames)/2 will be used for reference
    -a53cc <boolean> E..V..... Use A53 Closed Captions (if available) (default true)
  3. @nico-lab nico-lab created this gist Jan 3, 2018.
    91 changes: 91 additions & 0 deletions h264_nvenc
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,91 @@
    Encoder h264_nvenc [NVIDIA NVENC H.264 encoder]:
    General capabilities: delay
    Threading capabilities: none
    Supported pixel formats: yuv420p nv12 p010le yuv444p yuv444p16le bgr0 rgb0 cuda d3d11
    h264_nvenc AVOptions:
    -preset <int> E..V.... Set the encoding preset (from 0 to 11) (default medium)
    default E..V....
    slow E..V.... hq 2 passes
    medium E..V.... hq 1 pass
    fast E..V.... hp 1 pass
    hp E..V....
    hq E..V....
    bd E..V....
    ll E..V.... low latency
    llhq E..V.... low latency hq
    llhp E..V.... low latency hp
    lossless E..V....
    losslesshp E..V....
    -profile <int> E..V.... Set the encoding profile (from 0 to 3) (default main)
    baseline E..V....
    main E..V....
    high E..V....
    high444p E..V....
    -level <int> E..V.... Set the encoding level restriction (from 0 to 51) (default auto)
    auto E..V....
    1 E..V....
    1.0 E..V....
    1b E..V....
    1.0b E..V....
    1.1 E..V....
    1.2 E..V....
    1.3 E..V....
    2 E..V....
    2.0 E..V....
    2.1 E..V....
    2.2 E..V....
    3 E..V....
    3.0 E..V....
    3.1 E..V....
    3.2 E..V....
    4 E..V....
    4.0 E..V....
    4.1 E..V....
    4.2 E..V....
    5 E..V....
    5.0 E..V....
    5.1 E..V....
    -rc <int> E..V.... Override the preset rate-control (from -1 to INT_MAX) (default -1)
    constqp E..V.... Constant QP mode
    vbr E..V.... Variable bitrate mode
    cbr E..V.... Constant bitrate mode
    vbr_minqp E..V.... Variable bitrate mode with MinQP (deprecated)
    ll_2pass_quality E..V.... Multi-pass optimized for image quality (deprecated)
    ll_2pass_size E..V.... Multi-pass optimized for constant frame size (deprecated)
    vbr_2pass E..V.... Multi-pass variable bitrate mode (deprecated)
    cbr_ld_hq E..V.... Constant bitrate low delay high quality mode
    cbr_hq E..V.... Constant bitrate high quality mode
    vbr_hq E..V.... Variable bitrate high quality mode
    -rc-lookahead <int> E..V.... Number of frames to look ahead for rate-control (from 0 to INT_MAX) (default 0)
    -surfaces <int> E..V.... Number of concurrent surfaces (from 0 to 64) (default 0)
    -cbr <boolean> E..V.... Use cbr encoding mode (default false)
    -2pass <boolean> E..V.... Use 2pass encoding mode (default auto)
    -gpu <int> E..V.... Selects which NVENC capable GPU to use. First GPU is 0, second is 1, and so on. (from -2 to INT_MAX) (default any)
    any E..V.... Pick the first device available
    list E..V.... List the available devices
    -delay <int> E..V.... Delay frame output by the given amount of frames (from 0 to INT_MAX) (default INT_MAX)
    -no-scenecut <boolean> E..V.... When lookahead is enabled, set this to 1 to disable adaptive I-frame insertion at scene cuts (default false)
    -forced-idr <boolean> E..V.... If forcing keyframes, force them as IDR frames. (default false)
    -b_adapt <boolean> E..V.... When lookahead is enabled, set this to 0 to disable adaptive B-frame decision (default true)
    -spatial-aq <boolean> E..V.... set to 1 to enable Spatial AQ (default false)
    -temporal-aq <boolean> E..V.... set to 1 to enable Temporal AQ (default false)
    -zerolatency <boolean> E..V.... Set 1 to indicate zero latency operation (no reordering delay) (default false)
    -nonref_p <boolean> E..V.... Set this to 1 to enable automatic insertion of non-reference P-frames (default false)
    -strict_gop <boolean> E..V.... Set 1 to minimize GOP-to-GOP rate fluctuations (default false)
    -aq-strength <int> E..V.... When Spatial AQ is enabled, this field is used to specify AQ strength. AQ strength scale is from 1 (low) - 15 (aggressive) (from 1 to 15) (default 8)
    -cq <float> E..V.... Set target quality level (0 to 51, 0 means automatic) for constant quality mode in VBR rate control (from 0 to 51) (default 0)
    -aud <boolean> E..V.... Use access unit delimiters (default false)
    -bluray-compat <boolean> E..V.... Bluray compatibility workarounds (default false)
    -init_qpP <int> E..V.... Initial QP value for P frame (from -1 to 51) (default -1)
    -init_qpB <int> E..V.... Initial QP value for B frame (from -1 to 51) (default -1)
    -init_qpI <int> E..V.... Initial QP value for I frame (from -1 to 51) (default -1)
    -qp <int> E..V.... Constant quantization parameter rate control method (from -1 to 51) (default -1)
    -weighted_pred <int> E..V.... Set 1 to enable weighted prediction (from 0 to 1) (default 0)
    -coder <int> E..V.... Coder type (from -1 to 2) (default default)
    default E..V....
    auto E..V....
    cabac E..V....
    cavlc E..V....
    ac E..V....
    vlc E..V....