Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[RTX] 请问如何启用4090显卡加速 #126

Closed
a1043710306 opened this issue Nov 21, 2022 · 3 comments
Closed

[RTX] 请问如何启用4090显卡加速 #126

a1043710306 opened this issue Nov 21, 2022 · 3 comments
Assignees
Labels
enhancement New feature or request

Comments

@a1043710306
Copy link

屏幕截图 2022-11-22 064420
目前编码器都用过了 都是cpu工作

@a1043710306 a1043710306 added the enhancement New feature or request label Nov 21, 2022
@Alkl58
Copy link
Owner

Alkl58 commented Feb 15, 2023

Added experimental NVENC AV1 support in the new release / 在新版本中增加了实验性的NVENC AV1支持 v2.1.2

@Alkl58 Alkl58 closed this as completed Feb 15, 2023
@suphamster
Copy link

suphamster commented May 25, 2023

I think it needs a better tweaking, for example max value cqp for it should be 255 and not 63 and anyway I got just same converted file size for cqp, vbr and cbr modes using very different bitrate and qp values depending on quality mode. I have RTX 4070 and tested with speed set to quality and chunking disabled\enabled, actually I dunno why use chuncking because with it tool do some splitting at first which takes up to 1 minute.

av1_nvenc AVOptions:
  -preset            <int>        E..V....... Set the encoding preset (from 0 to 18) (default p4)
     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
     p1              12           E..V....... fastest (lowest quality)
     p2              13           E..V....... faster (lower quality)
     p3              14           E..V....... fast (low quality)
     p4              15           E..V....... medium (default)
     p5              16           E..V....... slow (good quality)
     p6              17           E..V....... slower (better quality)
     p7              18           E..V....... slowest (best quality)
  -tune              <int>        E..V....... Set the encoding tuning info (from 1 to 4) (default hq)
     hq              1            E..V....... High quality
     ll              2            E..V....... Low latency
     ull             3            E..V....... Ultra low latency
     lossless        4            E..V....... Lossless
  -level             <int>        E..V....... Set the encoding level restriction (from 0 to 24) (default auto)
     auto            24           E..V.......
     2               0            E..V.......
     2.0             0            E..V.......
     2.1             1            E..V.......
     2.2             2            E..V.......
     2.3             3            E..V.......
     3               4            E..V.......
     3.0             4            E..V.......
     3.1             5            E..V.......
     3.2             6            E..V.......
     3.3             7            E..V.......
     4               8            E..V.......
     4.0             8            E..V.......
     4.1             9            E..V.......
     4.2             10           E..V.......
     4.3             11           E..V.......
     5               12           E..V.......
     5.0             12           E..V.......
     5.1             13           E..V.......
     5.2             14           E..V.......
     5.3             15           E..V.......
     6               16           E..V.......
     6.0             16           E..V.......
     6.1             17           E..V.......
     6.2             18           E..V.......
     6.3             19           E..V.......
     7               20           E..V.......
     7.0             20           E..V.......
     7.1             21           E..V.......
     7.2             22           E..V.......
     7.3             23           E..V.......
  -tier              <int>        E..V....... Set the encoding tier (from 0 to 1) (default 0)
     0               0            E..V.......
     1               1            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
  -multipass         <int>        E..V....... Set the multipass encoding (from 0 to 2) (default disabled)
     disabled        0            E..V....... Single Pass
     qres            1            E..V....... Two Pass encoding is enabled where first Pass is quarter resolution
     fullres         2            E..V....... Two Pass encoding is enabled where first Pass is full resolution
  -highbitdepth      <boolean>    E..V....... Enable 10 bit encode for 8 bit input (default false)
  -tile-rows         <int>        E..V....... Number of tile rows to encode with (from -1 to 64) (default -1)
  -tile-columns      <int>        E..V....... Number of tile columns to encode with (from -1 to 64) (default -1)
  -surfaces          <int>        E..V....... Number of concurrent surfaces (from 0 to 64) (default 0)
  -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)
  -rc-lookahead      <int>        E..V....... Number of frames to look ahead for rate-control (from 0 to INT_MAX) (default 0)
  -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)
  -init_qpP          <int>        E..V....... Initial QP value for P frame (from -1 to 255) (default -1)
  -init_qpB          <int>        E..V....... Initial QP value for B frame (from -1 to 255) (default -1)
  -init_qpI          <int>        E..V....... Initial QP value for I frame (from -1 to 255) (default -1)
  -qp                <int>        E..V....... Constant quantization parameter rate control method (from -1 to 255) (default -1)
  -qp_cb_offset      <int>        E..V....... Quantization parameter offset for cb channel (from -12 to 12) (default 0)
  -qp_cr_offset      <int>        E..V....... Quantization parameter offset for cr channel (from -12 to 12) (default 0)
  -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)
  -weighted_pred     <boolean>    E..V....... Enable weighted prediction (default false)
  -b_ref_mode        <int>        E..V....... Use B frames as references (from -1 to 2) (default -1)
     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
  -dpb_size          <int>        E..V....... Specifies the DPB size used for encoding (0 means automatic) (from 0 to INT_MAX) (default 0)
  -ldkfs             <int>        E..V....... Low delay key frame scale; Specifies the Scene Change frame size increase allowed in case of single frame VBV and CBR (from 0 to 255) (default 0)
  -intra-refresh     <boolean>    E..V....... Use Periodic Intra Refresh instead of IDR frames (default false)
  -timing-info       <boolean>    E..V....... Include timing info in sequence/frame headers (default false)
  -extra_sei         <boolean>    E..V....... Pass on extra SEI data (e.g. a53 cc) to be included in the bitstream (default true)
  -a53cc             <boolean>    E..V....... Use A53 Closed Captions (if available) (default true)
  -s12m_tc           <boolean>    E..V....... Use timecode (if available) (default true)

@suphamster
Copy link

suphamster commented May 25, 2023

For example command I use for myself look like this in cmd for ffmpeg:
ffmpeg -y -i "input.mp4" -c:v av1_nvenc -preset slow -multipass fullres -tune hq -rc-lookahead 4 -rc constqp -qp 70 -bf 3 -b_ref_mode middle -temporal-aq 1 -g 250 -c:a libopus -vbr on -compression_level 10 -b:a 40k "output.mkv"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants