From: Vittorio Giovara Date: Wed, 30 Nov 2016 22:09:33 +0000 (-0500) Subject: lavc: Use a stricter check for the color properties values X-Git-Tag: android-x86-7.1-r1~252^2~188 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=ff9db5cfd14558df9cfcc54d6c062bc34bf1f341;p=android-x86%2Fexternal-ffmpeg.git lavc: Use a stricter check for the color properties values Signed-off-by: Vittorio Giovara --- diff --git a/libavcodec/h264_ps.c b/libavcodec/h264_ps.c index 37c3be1cb9..8a64a33780 100644 --- a/libavcodec/h264_ps.c +++ b/libavcodec/h264_ps.c @@ -191,11 +191,13 @@ static inline int decode_vui_parameters(GetBitContext *gb, AVCodecContext *avctx sps->color_primaries = get_bits(gb, 8); /* colour_primaries */ sps->color_trc = get_bits(gb, 8); /* transfer_characteristics */ sps->colorspace = get_bits(gb, 8); /* matrix_coefficients */ - if (sps->color_primaries >= AVCOL_PRI_NB) + + // Set invalid values to "unspecified" + if (!av_color_primaries_name(sps->color_primaries)) sps->color_primaries = AVCOL_PRI_UNSPECIFIED; - if (sps->color_trc >= AVCOL_TRC_NB) + if (!av_color_transfer_name(sps->color_trc)) sps->color_trc = AVCOL_TRC_UNSPECIFIED; - if (sps->colorspace >= AVCOL_SPC_NB) + if (!av_color_space_name(sps->colorspace)) sps->colorspace = AVCOL_SPC_UNSPECIFIED; } } diff --git a/libavcodec/hevc_ps.c b/libavcodec/hevc_ps.c index c28e86b34a..2471907077 100644 --- a/libavcodec/hevc_ps.c +++ b/libavcodec/hevc_ps.c @@ -497,11 +497,11 @@ static void decode_vui(GetBitContext *gb, AVCodecContext *avctx, vui->matrix_coeffs = get_bits(gb, 8); // Set invalid values to "unspecified" - if (vui->colour_primaries >= AVCOL_PRI_NB) + if (!av_color_primaries_name(vui->colour_primaries)) vui->colour_primaries = AVCOL_PRI_UNSPECIFIED; - if (vui->transfer_characteristic >= AVCOL_TRC_NB) + if (!av_color_transfer_name(vui->transfer_characteristic)) vui->transfer_characteristic = AVCOL_TRC_UNSPECIFIED; - if (vui->matrix_coeffs >= AVCOL_SPC_NB) + if (!av_color_space_name(vui->matrix_coeffs)) vui->matrix_coeffs = AVCOL_SPC_UNSPECIFIED; } }