avcodec/h264_ps: Return error if pps has FMO parameters
authorAndriy Gelman <andriy.gelman@gmail.com>
Wed, 12 Feb 2020 23:36:56 +0000 (18:36 -0500)
committerJames Almer <jamrial@gmail.com>
Thu, 13 Feb 2020 02:31:37 +0000 (23:31 -0300)
FMO is not supported and fields related to FMO are not parsed, meaning
that any fields which follow will be corrupt.

Signed-off-by: James Almer <jamrial@gmail.com>
libavcodec/h264_ps.c

index d36921e..7085949 100644 (file)
@@ -794,7 +794,9 @@ int ff_h264_decode_picture_parameter_set(GetBitContext *gb, AVCodecContext *avct
     pps->slice_group_count = get_ue_golomb(gb) + 1;
     if (pps->slice_group_count > 1) {
         pps->mb_slice_group_map_type = get_ue_golomb(gb);
-        av_log(avctx, AV_LOG_ERROR, "FMO not supported\n");
+        avpriv_report_missing_feature(avctx, "FMO");
+        ret = AVERROR_PATCHWELCOME;
+        goto fail;
     }
     pps->ref_count[0] = get_ue_golomb(gb) + 1;
     pps->ref_count[1] = get_ue_golomb(gb) + 1;