This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

[BUG] NVenc (FFmpeg) x265 output is scrambled
#7
I appreciate a lot all the help u have given me.

And i of course understand it makes more sense for me to change the two Graphic cards. 
Then you having to fight through a long line of compiling issues getting it to work.

So i switched them yesterday and it works marvelously.

----

Just to check.
Handbrake which uses FFmpeg to encode can use the slow preset which should be better than the Quality preset and that preset is 2-pass.
Here is a show of the available options for FFmpeg (NVEnc)


ffmpeg -hide_banner -h encoder=hevc_nvenc | xclip -sel clip

Encoder hevc_nvenc [NVIDIA NVENC hevc encoder]:
    General capabilities: delay
    Threading capabilities: none
    Supported pixel formats: yuv420p nv12 p010le yuv444p yuv444p16le bgr0 rgb0 cuda
hevc_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.... lossless
     losslesshp                   E..V.... lossless hp
  -profile           <int>        E..V.... Set the encoding profile (from 0 to 4) (default main)
     main                         E..V....
     main10                       E..V....
     rext                         E..V....
  -level             <int>        E..V.... Set the encoding level restriction (from 0 to 186) (default auto)
     auto                         E..V....
     1                            E..V....
     1.0                          E..V....
     2                            E..V....
     2.0                          E..V....
     2.1                          E..V....
     3                            E..V....
     3.0                          E..V....
     3.1                          E..V....
     4                            E..V....
     4.0                          E..V....
     4.1                          E..V....
     5                            E..V....
     5.0                          E..V....
     5.1                          E..V....
     5.2                          E..V....
     6                            E..V....
     6.0                          E..V....
     6.1                          E..V....
     6.2                          E..V....
  -tier              <int>        E..V.... Set the encoding tier (from 0 to 1) (default main)
     main                         E..V....
     high                         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)
  -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)

Are these preset's and options available for NVEncC so they could be implemented? Or is it someting FFMpeg have metteled with themselves ?

->

Because when trying to find official information about it when searching on NVEnc and going to Nvidia Developer SDK i cant seem to find 2 pass or slow mode (Even though FFMpeg and hadbrake seems to make use of such modes)

----

But ofcouse its out of my leagua i am just hunting the best way to mass convert a lot of Nvidia Shadowplay Highlights/Videos as fast as possible with no loss of quality.

8 core CPU gives me 8-10 FPS, but NVEnvC (With or Without FFMPEG) with 4 cores/GtX 1050 gives me 100-175FPS so its definetly the fastest i have ever used.

The only thing i am interested in, is to get the best quality option that is available to optimize the result for lower bitrate.
Reply


Messages In This Thread
RE: NVenc (FFmpeg) x265 output is scrambled - by Darkyere - 07.06.2020, 11:59

Forum Jump:


Users browsing this thread: 1 Guest(s)