mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-02-02 12:32:29 +00:00
codecparsers: includes start_marker in h263 header for parsing
This commit is contained in:
parent
052d1ace5e
commit
1138aab1db
1 changed files with 9 additions and 1 deletions
|
@ -1497,7 +1497,10 @@ gst_mpeg4_parse_video_plane_short_header (GstMpeg4VideoPlaneShortHdr *
|
||||||
|
|
||||||
g_return_val_if_fail (shorthdr != NULL, GST_MPEG4_PARSER_ERROR);
|
g_return_val_if_fail (shorthdr != NULL, GST_MPEG4_PARSER_ERROR);
|
||||||
|
|
||||||
if (gst_bit_reader_get_remaining (&br) < 26)
|
if (gst_bit_reader_get_remaining (&br) < 48)
|
||||||
|
goto failed;
|
||||||
|
|
||||||
|
if (gst_bit_reader_get_bits_uint32_unchecked (&br, 22) != 0x20)
|
||||||
goto failed;
|
goto failed;
|
||||||
|
|
||||||
shorthdr->temporal_reference =
|
shorthdr->temporal_reference =
|
||||||
|
@ -1518,26 +1521,31 @@ gst_mpeg4_parse_video_plane_short_header (GstMpeg4VideoPlaneShortHdr *
|
||||||
shorthdr->vop_height = 96;
|
shorthdr->vop_height = 96;
|
||||||
shorthdr->num_macroblocks_in_gob = 8;
|
shorthdr->num_macroblocks_in_gob = 8;
|
||||||
shorthdr->num_gobs_in_vop = 6;
|
shorthdr->num_gobs_in_vop = 6;
|
||||||
|
break;
|
||||||
case 0x02:
|
case 0x02:
|
||||||
shorthdr->vop_width = 176;
|
shorthdr->vop_width = 176;
|
||||||
shorthdr->vop_height = 144;
|
shorthdr->vop_height = 144;
|
||||||
shorthdr->num_macroblocks_in_gob = 11;
|
shorthdr->num_macroblocks_in_gob = 11;
|
||||||
shorthdr->num_gobs_in_vop = 9;
|
shorthdr->num_gobs_in_vop = 9;
|
||||||
|
break;
|
||||||
case 0x03:
|
case 0x03:
|
||||||
shorthdr->vop_width = 352;
|
shorthdr->vop_width = 352;
|
||||||
shorthdr->vop_height = 288;
|
shorthdr->vop_height = 288;
|
||||||
shorthdr->num_macroblocks_in_gob = 22;
|
shorthdr->num_macroblocks_in_gob = 22;
|
||||||
shorthdr->num_gobs_in_vop = 18;
|
shorthdr->num_gobs_in_vop = 18;
|
||||||
|
break;
|
||||||
case 0x04:
|
case 0x04:
|
||||||
shorthdr->vop_width = 704;
|
shorthdr->vop_width = 704;
|
||||||
shorthdr->vop_height = 576;
|
shorthdr->vop_height = 576;
|
||||||
shorthdr->num_macroblocks_in_gob = 88;
|
shorthdr->num_macroblocks_in_gob = 88;
|
||||||
shorthdr->num_gobs_in_vop = 18;
|
shorthdr->num_gobs_in_vop = 18;
|
||||||
|
break;
|
||||||
case 0x05:
|
case 0x05:
|
||||||
shorthdr->vop_width = 1408;
|
shorthdr->vop_width = 1408;
|
||||||
shorthdr->vop_height = 1152;
|
shorthdr->vop_height = 1152;
|
||||||
shorthdr->num_macroblocks_in_gob = 352;
|
shorthdr->num_macroblocks_in_gob = 352;
|
||||||
shorthdr->num_gobs_in_vop = 18;
|
shorthdr->num_gobs_in_vop = 18;
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
shorthdr->vop_width = 0;
|
shorthdr->vop_width = 0;
|
||||||
shorthdr->vop_height = 0;
|
shorthdr->vop_height = 0;
|
||||||
|
|
Loading…
Reference in a new issue