VCEEnc
VCEEnc copied to clipboard
vceenc_x64 + ffmpeg 6.0 + amd amf 1.3.40 -- How to have Film Grain ?!
Hi rigaya, many thank for this wonderful tool for amd owners.
I custom update and mantain up-to-date all the tools required to create videos and i do have the latest versions built.
VCEEnc x64 - v.8.16 built with FFmpeg 6.0 and AMD AMF 1.3.40.
I noticed that currently vceenc ffmpeg was 5.1.2, so i updated to latest snapshot ffmpeg 6.0 built on september-24-2023. Also i did update amd amf too to latest version 1.3.40. With those updated i can do much, much more on my igpu.
However my problem is the Film Grain. as i just can't find the setting regarding that. I do have a source with best quality for many videos, videos that came with Film Grain in their original format and have excellent quality. However once i convert it to lower bitrate like 2400 kbs or even higher i loose the magic Film Grain and Quality too. It's just non watchable, really.
At the time of writing this i have all the latest updates of amd drivers such as AMD Software v23.9.2 and Drivers 31.0.21902.5. My system is an Zen 2 AMD Ryzen 5 - 5500U (6 cores + 6 threads) and my igpu is AMD Vega 7 with 7 cores units. Now i do know that Zen 2 is a tweak of nm of Zen 1 and that my Vega 7 igpu is based on/from 2017 with again nm tweaked, still i had before an intel igpu that could do Sharpening and add Film Grain. On AMD i just can't find it at all and it makes me MAD ! I know i know that Itel are kings regarding video quality, and AMD are just bad, but it should be somewhere the option to turn on the Film Grain or Sharpening in/on AMD too, please help as i am desperate !
a. original source - has film grain and quality
b. vceenc_x64 v8.16 custom + ffmpeg v6.0 build 24-sept-2023 + amd amf v1.4.30
c. info
ps. i even tried separated ffmpeg 6.0 and amd amf 1.3.4, transcodehw and with all i have the same non grain or should i say lost grain and the quality is not welcomed.
I can say whatsoever that encoding on cpu only, the quality is awesome with x.265.exe, but the time to finish is hmmm hours like 160 minutes..
And i forgot to tell that on AMD AMF TranscodeHW.EXE i do have Pre Analysis working on HEVC too with CBRHQ (CBR-High Quality). Even on FFMPEG 6.0 CBRHQ (CBR-High Quality) for HEVC is working too.
Just to give an example HEVC with CBRHQ (CBR-High Quality) on both AMD AMF TranscodeHW.EXE & FFMPEG 6.0 without Pre Analysis enabled i have over 100 fps like around 108 fps. When i enable Pre Analysis the fps goes down to 37 fps for both AMD AMF and FFMPEG !
On VCEEnc.x64 i have way over 138 fps, but the vceenc.x64 doesn't see the cbrhq for hevc nor the pre analisys (i am still looking into the source code to fix it)
More AMD AMF TranscodeHW.exe and also FFmpeg 6.0 use the igpu's Video Codec 0 and by doing that only as the CPU is staying only at 2 % iGPU Video Codec 0 is sometimes at 100 %. on amd amf and ffmpeg is working wonderful the setting "-hwaccel d3d11va -hwaccel_output_format d3d11"
On VCEEnc.x64 the CPU is going to 37 % and the igpu Video Codec 0 is at 38 % and 3D is at 27 %.
I am still looking into VCEEnc source code to address this, because it's a very big thing.
Last both on AMD AMF and FFMPEG 6.0 i can use -usage high_quality -quality quality on VCEEnc.x64 i can't use both, just one like --preset slow that's why on VCEEnc .x64 i do have higher frame rate than the above two, but sadly lower quality also.
it works HQ-CBR only on 8-bit, on 10-bit no way..amd amf
anyway on HEVC works HQ-CBR with --pa on and HQ-VBR with again --pa on but the fps on both is from 7 fps to 19 fps ! hahaha amd wanna be quality and performance, mr rigaya if i were you sir i will close this project as it is a waste of your time trying to fix amd mistakes, amd makes video encoding a joke really and why bother when Intel or nVidia are top and amd was is and it will always be a non player. AMD gpu or igpu are just broken things, won't worth spending time fixing something that can't be fixed !
here are my result with you wonderful QSVEncC and VCEEnc https://github.com/GPUOpen-LibrariesAndSDKs/AMF/issues/420#issuecomment-1735457332