[x265] [PATCH] encoder: expose BREF slice type in pic_out sliceType

Aarthi Priya Thirumalai aarthi at multicorewareinc.com
Tue Nov 21 05:58:36 CET 2017


In finishFrameStats, the pic_out->frameData->sliceType is getting set as
I/P/B. For this, we combine the B/BREF from lowres.sliceType and set it as
'B'
But the pic_out->sliceType is set to lowres.sliceType which is an enum with
5 values.
I can see the lowres.sliceTypes able to differentiate between BREF(4) and
B(5).

Can you pls provide your test cli if you are not able to see this in
lowres.sliceType. Since we use it in other places as well, this can be a
bigger problem if lowres.sliceType
does not indicate BREF.


Aarthi Priya Thirumalai
Technical Lead, UHDkit
Multicoreware Inc

On Mon, Nov 20, 2017 at 9:12 PM, John Stebbins <stebbins at jetheaddev.com>
wrote:

> BREF is not set in lowres.SliceType. Only B slice type is getting set in
> pic_out sliceType.  A similar test is already performed in finishFrameStats
> because lowres.sliceType does not distinguish.
>
> On 11/19/2017 10:15 PM, Aarthi Priya Thirumalai wrote:
>
> I think this change is not necessary since the sliceType in pic_out is
> already set from m_lowres.sliceType.
> So, if the B frame is a B_REF, this is reflected from the lowres.sliceType
> already.
>
> Is there any reason, you are explicitly setting it again?
>
> On Fri, Nov 17, 2017 at 4:41 AM, John Stebbins <stebbins at jetheaddev.com>
> wrote:
>
>> # HG changeset patch
>> # User John Stebbins <jstebbins.hb at gmail.com>
>> # Date 1510861637 28800
>> #      Thu Nov 16 11:47:17 2017 -0800
>> # Branch stable
>> # Node ID 5b61fc79bfa2d2bf85f8796001d711e5eed1fa1c
>> # Parent  0b3ba15b33eaed5681f639697024525e9460bb31
>> encoder: expose BREF slice type in pic_out sliceType
>>
>> The AppleTV 4K requires accurate frame dependency information in the
>> mp4 sdtp box in order to play 2160p60 content.
>>
>> diff -r 0b3ba15b33ea -r 5b61fc79bfa2 source/encoder/encoder.cpp
>> --- a/source/encoder/encoder.cpp        Tue Sep 05 11:21:24 2017 +0530
>> +++ b/source/encoder/encoder.cpp        Thu Nov 16 11:47:17 2017 -0800
>> @@ -857,6 +857,9 @@
>>                  pic_out->pts = outFrame->m_pts;
>>                  pic_out->dts = outFrame->m_dts;
>>                  pic_out->sliceType = outFrame->m_lowres.sliceType;
>> +                if (pic_out->sliceType == X265_TYPE_B &&
>> +                    IS_REFERENCED(outFrame))
>> +                    pic_out->sliceType = X265_TYPE_BREF;
>>                  pic_out->planes[0] = recpic->m_picOrg[0];
>>                  pic_out->stride[0] = (int)(recpic->m_stride *
>> sizeof(pixel));
>>                  if (m_param->internalCsp != X265_CSP_I400)
>> _______________________________________________
>> x265-devel mailing list
>> x265-devel at videolan.org
>> https://mailman.videolan.org/listinfo/x265-devel
>>
>
>
>
> _______________________________________________
> x265-devel mailing listx265-devel at videolan.orghttps://mailman.videolan.org/listinfo/x265-devel
>
>
> --
> John      GnuPG fingerprint: D0EC B3DB C372 D1F1 0B01  83F0 49F1 D7B2 60D4 D0F7
>
>
> _______________________________________________
> 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/20171121/74276480/attachment-0001.html>


More information about the x265-devel mailing list