aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZhao Halley2011-12-05 18:21:19 -0600
committerThibault Saunier2011-12-06 14:05:52 -0600
commit164faafad6e7189520fc3a0f21db11235f03eb68 (patch)
tree721f462b71d383145ed1545d8441cd17c96c22d7 /gst-libs
parentf33f26e437c3cc323c36850ad8ed6b61e96a40fc (diff)
downloadgst-plugins-bad0-10-164faafad6e7189520fc3a0f21db11235f03eb68.tar.gz
gst-plugins-bad0-10-164faafad6e7189520fc3a0f21db11235f03eb68.tar.xz
gst-plugins-bad0-10-164faafad6e7189520fc3a0f21db11235f03eb68.zip
codecparsers: include resync marker in video packet size
Diffstat (limited to 'gst-libs')
-rw-r--r--gst-libs/gst/codecparsers/gstmpeg4parser.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/gst-libs/gst/codecparsers/gstmpeg4parser.c b/gst-libs/gst/codecparsers/gstmpeg4parser.c
index eb9eceb08..664aa04cc 100644
--- a/gst-libs/gst/codecparsers/gstmpeg4parser.c
+++ b/gst-libs/gst/codecparsers/gstmpeg4parser.c
@@ -394,7 +394,7 @@ gst_mpeg4_next_resync (GstMpeg4Packet * packet,
394 if (off2 == -1) 394 if (off2 == -1)
395 return GST_MPEG4_PARSER_NO_PACKET_END; 395 return GST_MPEG4_PARSER_NO_PACKET_END;
396 396
397 packet->size = off1 - off2; 397 packet->size = off2 - off1;
398 398
399 return GST_MPEG4_PARSER_OK; 399 return GST_MPEG4_PARSER_OK;
400} 400}
@@ -478,7 +478,11 @@ find_end:
478 return GST_MPEG4_PARSER_NO_PACKET_END; 478 return GST_MPEG4_PARSER_NO_PACKET_END;
479 } 479 }
480 480
481 packet->size = (gsize) off2 - off1 - 3; 481 if (packet->type == GST_MPEG4_RESYNC) {
482 packet->size = (gsize) off2 - off1;
483 } else {
484 packet->size = (gsize) off2 - off1 - 3;
485 }
482 486
483 GST_DEBUG ("Complete packet of type %x found at: %d, Size: %" G_GSSIZE_FORMAT, 487 GST_DEBUG ("Complete packet of type %x found at: %d, Size: %" G_GSSIZE_FORMAT,
484 packet->type, packet->offset, packet->size); 488 packet->type, packet->offset, packet->size);