summaryrefslogtreecommitdiff
path: root/gst-libs/gst
diff options
context:
space:
mode:
authorZhao Halley <halley.zhao@intel.com>2011-12-06 08:21:19 +0800
committerThibault Saunier <thibault.saunier@collabora.com>2011-12-06 17:05:52 -0300
commit164faafad6e7189520fc3a0f21db11235f03eb68 (patch)
tree721f462b71d383145ed1545d8441cd17c96c22d7 /gst-libs/gst
parentf33f26e437c3cc323c36850ad8ed6b61e96a40fc (diff)
codecparsers: include resync marker in video packet size
Diffstat (limited to 'gst-libs/gst')
-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,
if (off2 == -1)
return GST_MPEG4_PARSER_NO_PACKET_END;
- packet->size = off1 - off2;
+ packet->size = off2 - off1;
return GST_MPEG4_PARSER_OK;
}
@@ -478,7 +478,11 @@ find_end:
return GST_MPEG4_PARSER_NO_PACKET_END;
}
- packet->size = (gsize) off2 - off1 - 3;
+ if (packet->type == GST_MPEG4_RESYNC) {
+ packet->size = (gsize) off2 - off1;
+ } else {
+ packet->size = (gsize) off2 - off1 - 3;
+ }
GST_DEBUG ("Complete packet of type %x found at: %d, Size: %" G_GSSIZE_FORMAT,
packet->type, packet->offset, packet->size);