gst-plugins-bad: mpegvideoparse: Do not ignore start code at the end of buffer

Sebastian Dröge slomo at kemper.freedesktop.org
Sun Apr 15 23:42:23 PDT 2012


Module: gst-plugins-bad
Branch: master
Commit: 045e8bb506f24321bcd20933ceab8588e225ec3c
URL:    http://cgit.freedesktop.org/gstreamer/gst-plugins-bad/commit/?id=045e8bb506f24321bcd20933ceab8588e225ec3c

Author: Matej Knopp <matej.knopp at gmail.com>
Date:   Sat Apr 14 21:09:25 2012 +0200

mpegvideoparse: Do not ignore start code at the end of buffer

---

 gst-libs/gst/codecparsers/gstmpegvideoparser.c |   10 +++++-----
 1 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/gst-libs/gst/codecparsers/gstmpegvideoparser.c b/gst-libs/gst/codecparsers/gstmpegvideoparser.c
index b45156a..ec8c934 100644
--- a/gst-libs/gst/codecparsers/gstmpegvideoparser.c
+++ b/gst-libs/gst/codecparsers/gstmpegvideoparser.c
@@ -334,13 +334,13 @@ gst_mpeg_video_parse (const guint8 * data, gsize size, guint offset)
     codoffsize->offset = gst_byte_reader_get_pos (&br) + offset;
 
     rsize = gst_byte_reader_get_remaining (&br);
-    if (rsize <= 0) {
-      g_free (codoffsize);
-      break;
+    if (rsize == 0) {
+      /* if there are no more bytes after the start code set the size to -1 */
+      off = -1;
+    } else {
+      off = scan_for_start_codes (&br, 0, rsize);
     }
 
-    off = scan_for_start_codes (&br, 0, rsize);
-
     codoffsize->size = off;
 
     ret = g_list_prepend (ret, codoffsize);



More information about the gstreamer-commits mailing list