----- Original Message -----
> From: Hendrik Leppkes <[email protected]>
> To: libav development <[email protected]>
> Cc:
> Sent: Sunday, January 22, 2012 1:22 AM
> Subject: [libav-devel] [PATCH 2/2] vc1: always read the bfraction element for
> interlaced fields
>
> Hi,
>
> attached patch fixes an inconsistency in the VC-1 interlaced fields
> header parsing.
> I validated the changes against the spec and the reference decoder,
> and this does seem more correct.
Doesn't mach my copy of spec or the ref-code. BFRACTION is only present
in B-pictures, not P. My copy of ref-code says:
if(vc1_InterlacedField == pPosition->ePictureFormat)
{
if(TRUE == pSeqParams->RefDistFlag)
{
if( (TRUE == vc1_PictureTypeIsRef(pParams->ePictureType[0])) ||
(TRUE == vc1_PictureTypeIsRef(pParams->ePictureType[1])) )
{
which translates to (in lavc):
if (v->fcm == ILACE_FIELD)
{
if (v->refdist_flag)
{
if (s->pict_type != AV_PICTURE_TYPE_B ||
s->pict_type != AV_PICTURE_TYPE_BI)
{
....
Hence I think our code is correct. The spec seems to agree.
I may be wrong though. I'd like a second dev to cross-check
against the ref-code.
>
> I don't know if this actually affected any files, i couldn't find one,
> but with the state of the VC-1 interlaced decoding in general, its
> rather hard to tell.
>
> - Hendrik
>
> _______________________________________________
> libav-devel mailing list
> [email protected]
> https://lists.libav.org/mailman/listinfo/libav-devel
>
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel