[FFmpeg-user] Can this trigger VBR encoding for x264, x265, and libvvenc ?

Ferdi Scholten ferdi at sttc-nlp.nl
Fri Nov 1 14:42:04 EET 2024


Sorry for top-posting 🙏
> My content is gaming content, and I record the gameplay in form of .lmp
> files.
>
> When a command ( which isn't related to ffmpeg ) is given from a batch
> file, the gameplay starts being played back.
>
> During the playing back of the gameplay, the audio and video are encoded
> simulataenously.
>
> So, even if I wish, I can't use 2 pass encoding.
>
> So, which option from the 2 should I stick to ? CVBR or ABR ?
>
> On Fri, 1 Nov, 2024, 3:35 pm Ferdi Scholten,<ferdi at sttc-nlp.nl>  wrote:
>
>> Also, in general case, for gaming content, between CVBR and ABR, which
>>> provides better quality at same filesizes ?
>>>
>>> On Wed, 30 Oct, 2024, 7:40 pm Ferdi Scholten,<ferdi at sttc-nlp.nl>   wrote:
>>>
>>>> Okay, thank you sir.
>>>>> Should I keep the bufsize 5 times that of maxrate ? Will that help in
>>>>> effective allocation of bitrates ? Also, for getting the best possible
>>>>> quality in this case, how high should be the value of bufsize ? What is
>>>>> your recommendation ?
>>>>>
>>>>>     (I use the slow preset for both x264 and x265 for getting better
>>>> quality
>>>>> at same filesizes btw).
>>>>>
>>>>> On Wed, 30 Oct, 2024, 6:25 pm Ferdi Scholten,<ferdi at sttc-nlp.nl>
>>   wrote:
>>>>>> If I set " -b:v 5000k -maxrate 6000k -minrate 4000k " for x264, x265
>> and
>>>>>>> vvenc, will this enable VBR encoding for these three encoders ?
>>>>>>> _______________________________________________
>>>>>>>
>>>>>> If "constrained VBR" is what you want then the answer is yes.
>>>>>>
>>>>>> It is not true VBR because it will never get below minrate or above
>>>>>> maxrate even if it would be possible/necessary for maintaining the
>>>>>> encoding quality
>>>>>> _______________________________________________
>>>>>>
>>>> try to see it like this, the bufsize/maxrate is the frequency at which
>>>> ffmpeg checks for the need of changing the bitrate.
>>>> This is of course highly dependent on the type of content you have.
>>>> Detailed content with high motion and/or lots of scene changes will do
>>>> best with bufsize = maxrate, while for more static content bufsize can
>>>> be >= 5 times maxrate.
>>>> _______________________________________________
>>>>
>> First, please stop top posting in this list! read the guidelines for
>> posting!
>>
>> Second to answer your question: It all depends on the content. There is
>> no general "best quality type of encoding"
>>
>> If you want the best quality for your given constraints (filesize and/or
>> bitrate) and you are not live streaming you should always use multiple
>> pass encoding,
>> if you are live streaming, read this:
>> https://trac.ffmpeg.org/wiki/StreamingGuide
>>
>> _______________________________________________
>>
If you can replay the .lmp file more than once you can use multi pass 
encoding.

Otherwise I would use single pass cfr for encoding with the desired 
quality, maybe with max-bitrate set.
-crf 16 is a good starting point if you want high quality encodes in x265


More information about the ffmpeg-user mailing list