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.

'Lightweight' encoder for high bitrate video, 60 FPS, YUV444?
#7
(15.12.2022, 14:24)Selur Wrote: Not totally sure about how ffmpeg handles it, but normal x264 only respects buffersize&co if profile&level are set. You only specified the profile.

Fixed

(15.12.2022, 14:24)Selur Wrote: You probably might want to read up on vbv restrictions and read up on ffmpegs  'x264-params' instead of using maxrate and bufsize. The vbv readup is needed, so that you understand what that max bit rate really is meant to do, since it does not set an absolute maximum bit rate. Wink

Read some on that VBV functionality, I believe I applied it properly below.

(15.12.2022, 14:24)Selur Wrote: 'opencl=true' <- is probably a bad idea if it enables the opencl support in x264, since the opencl support in x264 isn't really useful and sometimes even harmful.

Removed it, but not sure why it would be harmful?



Okay, this was the command I got to, but there was significant blockiness when movement appeared, almost like I was watching 6Mb/s 1080i50 streams on TV:

preset=ultrafast profile=high444 level=4 crf=17 tune=zerolatency maxrate=20M bufsize=20M x264-params=pix_fmt=yuv444p:hwaccel=dxva:force-cfr=1

Maybe if I dropped the preset to veryhigh, or somehow forced an Open GOP and interlacing, but I'm not sure it's worth it, since most of these will increase CPU usage and at this resolution games are CPU-bound, so it's already high enough.

I compared the above command to this H264 NVENC one and the results were far from comparable:

profile=high444p level=4 rc=vbr maxrate=20M bufsize=20M

Plus the GPU usage was very low for the quality of the output: 8%.
Maybe because I used VBR instead of CRF?

At this point I am not sure it's worth scratching our heads further, since I now have a good quality output file, while keeping the size low. Unless there is some way of setting the ildct and ilme flags for interlaced encoding, plus limiting the output fields to 60 from within the encoder, since OBS only outputs progressive by default, which is not possible, from my lookups.

Thanks for your time, you've been a big help, as always.
Reply


Messages In This Thread
RE: 'Lightweight' encoder for high bitrate video, 60 FPS, YUV444? - by antoniu200 - 15.12.2022, 17:21

Forum Jump:


Users browsing this thread: 1 Guest(s)