[FFmpeg-devel] [PATCH] h264_ps: validate chroma sample location

Michael Niedermayer michael at niedermayer.cc
Sat Jan 7 02:41:15 EET 2017


On Fri, Jan 06, 2017 at 11:33:13PM +0100, Andreas Cadhalpun wrote:
> On 06.01.2017 22:47, Kieran Kunhya wrote:
> > On Fri, 6 Jan 2017 at 20:44 Andreas Cadhalpun <
> > andreas.cadhalpun at googlemail.com> wrote:
> > 
> >> Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun at googlemail.com>
> >> ---
> >>  libavcodec/h264_ps.c | 4 ++++
> >>  1 file changed, 4 insertions(+)
> >>
> >> diff --git a/libavcodec/h264_ps.c b/libavcodec/h264_ps.c
> >> index 8218e3a010..089bfc650a 100644
> >> --- a/libavcodec/h264_ps.c
> >> +++ b/libavcodec/h264_ps.c
> >> @@ -181,6 +181,10 @@ static inline int decode_vui_parameters(GetBitContext
> >> *gb, AVCodecContext *avctx
> >>      if (get_bits1(gb)) {
> >>          /* chroma_sample_location_type_top_field */
> >>          avctx->chroma_sample_location = get_ue_golomb(gb) + 1;
> >> +        if (!av_chroma_location_name(avctx->chroma_sample_location)) {
> >> +            av_log(avctx, AV_LOG_WARNING, "Invalid chroma sample location
> >> %d, setting to unspecified\n", avctx->chroma_sample_location);
> >> +            avctx->chroma_sample_location = AVCHROMA_LOC_UNSPECIFIED;
> >> +        }
> >>
> >>
> > Is there a way to long only once, this seems like it could spam the user
> > full of these warnings.
> 
> One could add a field like shown_chroma_loc_warning to SPS, but I think
> that would be a bit too much overhead for this.
> Alternatively, one could drop the log message entirely. (Wrong color
> primaries etc. aren't logged either...)

I think making it a "normally not displayed" log level would be a
better choice than removing it entirely

also a generic solution is possible, like a

av_log_once(context, &context->my_message_state, ...)
such function would also allow simplifying a bit of code

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Avoid a single point of failure, be that a person or equipment.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: Digital signature
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20170107/eab7e5be/attachment.sig>


More information about the ffmpeg-devel mailing list