[x265] How to use vbv-end and vbv-init for chunked encoding

Vasiliy Volkov volk.vasiliy at gmail.com
Mon Mar 12 08:10:32 CET 2018


Hi, Aruna, Alex,

So, if I'll just setup vbv-init=0.5:vbv-end=0.5 for separated encoding
sessions -- there will be correct settings and buffer overflow should not
be expected, right?

About frame number - as far as we measured there is non-linear dependency
of encoding speed against GOP length, so we're have to use something about
25-50 frames in VBV adjustment.

2018-03-07 23:05 GMT+03:00 Alex Giladi <alex.giladi at gmail.com>:

> Hi Vassily,
> I would also add that you need to set a reasonable amount of frames for
> the VBV adjustment, otherwise your last frames may suffer quality-wise.
> Best,
> Alex.
>
> On Wed, Mar 7, 2018 at 9:28 AM, Aruna Matheswaran <
> aruna at multicorewareinc.com> wrote:
>
>> Hi,
>>
>>  vbv-init specifies the portion of the vbv buffer which must be
>> available before the encoder begins encoding and * vbv-end* denotes the
>> portion of the vbv buffer that must be available after all the specified
>> frames have been inserted into the vbv buffer.
>> Therefore, while encoding multiple chunks in parallel and merging them
>> into a single stream, *vbv-init of any chunk should be the same as the
>> vbv-end of its previous chunk*. If vbv-end of chunk X is less than
>> vbv-init of chunk X+1, there are chances for the buffer to overflow.
>>
>> Thanks,
>> Aruna
>>
>> On Wed, Mar 7, 2018 at 4:43 PM, Vasiliy Volkov <volk.vasiliy at gmail.com>
>> wrote:
>>
>>> Hi,
>>>
>>> Recently libx265 gets vbv-end encoding option with comment that it can
>>> be used for chunked encoding. My question is how it can be used?
>>>
>>> Recently we've split our encoding session into multiple processes -- so
>>> multiple instances of libx265 encoder encodes same stream, GOP by GOP, and
>>> then such stream merges into single stream again. It works well, but rate
>>> controllers are not share their states between encoders instances and I
>>> think such encoding is not VBV-compliant.
>>> And from comment to vbv-end option I think that it can fix it encoding.
>>>
>>> Can somebody explain how this option should be used and how it can helps
>>> us (or maybe not and we need to find another solution)?
>>>
>>> For example, we use such encoding options: bitrate=4500:bufsize=10000:maxrate=5000,
>>> and in such setup vbv-init by default is 0.9
>>>
>>> For this setup what we need to specify for vbv-end?
>>>
>>>
>>>
>>> _______________________________________________
>>> x265-devel mailing list
>>> x265-devel at videolan.org
>>> https://mailman.videolan.org/listinfo/x265-devel
>>>
>>>
>>
>> _______________________________________________
>> x265-devel mailing list
>> x265-devel at videolan.org
>> https://mailman.videolan.org/listinfo/x265-devel
>>
>>
>
> _______________________________________________
> x265-devel mailing list
> x265-devel at videolan.org
> https://mailman.videolan.org/listinfo/x265-devel
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/x265-devel/attachments/20180312/bfd3c593/attachment.html>


More information about the x265-devel mailing list