On Sun, 10 Nov 2013 00:12:12 +0900, Yusuke Nakamura 
<[email protected]> wrote:
> 2013/11/9 Vittorio Giovara <[email protected]>
> 
> > On Mon, Nov 4, 2013 at 1:10 PM, Vittorio Giovara
> > <[email protected]> wrote:
> > > ---
> > >  libavcodec/h264_ps.c |    5 +++++
> > >  1 file changed, 5 insertions(+)
> > >
> > > diff --git a/libavcodec/h264_ps.c b/libavcodec/h264_ps.c
> > > index 819b7ff..95e0b9a 100644
> > > --- a/libavcodec/h264_ps.c
> > > +++ b/libavcodec/h264_ps.c
> > > @@ -181,6 +181,11 @@ static inline int decode_vui_parameters(H264Context
> > *h, SPS *sps)
> > >          chroma_sample_loc_type_top_field    = get_ue_golomb(&h->gb);
> > >          chroma_sample_loc_type_bottom_field = get_ue_golomb(&h->gb);
> > >
> > > +        if (chroma_sample_loc_type_top_field !=
> > chroma_sample_loc_type_bottom_field) {
> > > +            av_log(h->avctx, AV_LOG_WARNING, "Different chroma location
> > for top and bottom fields is not supported.");
> > > +            if (h->avctx->err_recognition & AV_EF_EXPLODE)
> > > +                return AVERROR_PATCHWELCOME;
> > > +        }
> > >          h->avctx->chroma_sample_location =
> > chroma_sample_loc_type_top_field + 1;
> > >      }
> > >
> > > --
> > > 1.7.9.5
> > >
> >
> > Ping patchset.
> > Vittorio
> > _______________________________________________
> > libav-devel mailing list
> > [email protected]
> > https://lists.libav.org/mailman/listinfo/libav-devel
> >
> 
> Chroma sample locations have nothing to do with decoding.
> So, you should not return as an error and stop decoding process.

The error is returned only if AV_EF_EXPLODE is set.
The explicit purpose of that option is to do extra validity checking and abort
on any invalid data, even if it could be decoded.

-- 
Anton Khirnov
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to