diff --git a/gst-libs/gst/codecparsers/gsth264parser.c b/gst-libs/gst/codecparsers/gsth264parser.c index 619bd78d6c..ae4b147b67 100644 --- a/gst-libs/gst/codecparsers/gsth264parser.c +++ b/gst-libs/gst/codecparsers/gsth264parser.c @@ -364,6 +364,14 @@ gst_h264_parser_parse_scaling_list (NalReader * nr, { guint i; + static const guint8 *default_lists[12] = { + default_4x4_intra, default_4x4_intra, default_4x4_intra, + default_4x4_inter, default_4x4_inter, default_4x4_inter, + default_8x8_intra, default_8x8_inter, + default_8x8_intra, default_8x8_inter, + default_8x8_intra, default_8x8_inter + }; + GST_DEBUG ("parsing scaling lists"); for (i = 0; i < 12; i++) { @@ -397,7 +405,8 @@ gst_h264_parser_parse_scaling_list (NalReader * nr, next_scale = (last_scale + delta_scale) & 0xff; } if (j == 0 && next_scale == 0) { - use_default = TRUE; + /* Use default scaling lists (7.4.2.1.1.1) */ + memcpy (scaling_list, default_lists[i], size); break; } last_scale = scaling_list[j] =