From 5384308c9953c97fe00e3766ecbc9ccd055576ce Mon Sep 17 00:00:00 2001 From: Debarshi Ray Date: Mon, 23 May 2011 18:06:44 +0300 Subject: [PATCH] matroska: refactor code common to matroskademux and matroskaparse Move the following function to matroska-read-common.[ch] from matroska-demux.c and matroska-parse.c: - gst_matroska_{demux,parse}_peek_pull https://bugzilla.gnome.org/show_bug.cgi?id=650877 --- gst/matroska/matroska-demux.c | 15 +++------------ gst/matroska/matroska-parse.c | 15 +++------------ gst/matroska/matroska-read-common.c | 10 ++++++++++ gst/matroska/matroska-read-common.h | 2 ++ 4 files changed, 18 insertions(+), 24 deletions(-) diff --git a/gst/matroska/matroska-demux.c b/gst/matroska/matroska-demux.c index 522af9a467..12f719389b 100644 --- a/gst/matroska/matroska-demux.c +++ b/gst/matroska/matroska-demux.c @@ -461,23 +461,14 @@ gst_matroska_demux_reset (GstElement * element) } } -static const guint8 * -gst_matroska_demux_peek_pull (GstMatroskaDemux * demux, guint peek) -{ - guint8 *data = NULL; - - gst_matroska_read_common_peek_bytes (&demux->common, demux->common.offset, - peek, NULL, &data); - return data; -} - static GstFlowReturn gst_matroska_demux_peek_id_length_pull (GstMatroskaDemux * demux, guint32 * _id, guint64 * _length, guint * _needed) { return gst_ebml_peek_id_length (_id, _length, _needed, - (GstPeekData) gst_matroska_demux_peek_pull, (gpointer) demux, - GST_ELEMENT_CAST (demux), demux->common.offset); + (GstPeekData) gst_matroska_read_common_peek_pull, + (gpointer) (&demux->common), GST_ELEMENT_CAST (demux), + demux->common.offset); } static gint64 diff --git a/gst/matroska/matroska-parse.c b/gst/matroska/matroska-parse.c index 6f30055adb..2b0fb020c1 100644 --- a/gst/matroska/matroska-parse.c +++ b/gst/matroska/matroska-parse.c @@ -384,23 +384,14 @@ gst_matroska_parse_reset (GstElement * element) } } -static const guint8 * -gst_matroska_parse_peek_pull (GstMatroskaParse * parse, guint peek) -{ - guint8 *data = NULL; - - gst_matroska_read_common_peek_bytes (&parse->common, parse->common.offset, - peek, NULL, &data); - return data; -} - static GstFlowReturn gst_matroska_parse_peek_id_length_pull (GstMatroskaParse * parse, guint32 * _id, guint64 * _length, guint * _needed) { return gst_ebml_peek_id_length (_id, _length, _needed, - (GstPeekData) gst_matroska_parse_peek_pull, (gpointer) parse, - GST_ELEMENT_CAST (parse), parse->common.offset); + (GstPeekData) gst_matroska_read_common_peek_pull, + (gpointer) (&parse->common), GST_ELEMENT_CAST (parse), + parse->common.offset); } static gint64 diff --git a/gst/matroska/matroska-read-common.c b/gst/matroska/matroska-read-common.c index efd0ce0cef..f1fb2624e4 100644 --- a/gst/matroska/matroska-read-common.c +++ b/gst/matroska/matroska-read-common.c @@ -709,6 +709,16 @@ gst_matroska_read_common_peek_bytes (GstMatroskaReadCommon * common, guint64 return GST_FLOW_OK; } +const guint8 * +gst_matroska_read_common_peek_pull (GstMatroskaReadCommon * common, guint peek) +{ + guint8 *data = NULL; + + gst_matroska_read_common_peek_bytes (common, common->offset, peek, NULL, + &data); + return data; +} + GstFlowReturn gst_matroska_read_common_read_track_encoding (GstMatroskaReadCommon * common, GstEbmlRead * ebml, GstMatroskaTrackContext * context) diff --git a/gst/matroska/matroska-read-common.h b/gst/matroska/matroska-read-common.h index c2cf0248eb..bd715f0748 100644 --- a/gst/matroska/matroska-read-common.h +++ b/gst/matroska/matroska-read-common.h @@ -80,6 +80,8 @@ GstFlowReturn gst_matroska_read_common_parse_skip (GstMatroskaReadCommon * common, GstEbmlRead * ebml, const gchar * parent_name, guint id); GstFlowReturn gst_matroska_read_common_peek_bytes (GstMatroskaReadCommon * common, guint64 offset, guint size, GstBuffer ** p_buf, guint8 ** bytes); +const guint8 * gst_matroska_read_common_peek_pull (GstMatroskaReadCommon * + common, guint peek); gint gst_matroska_read_common_stream_from_num (GstMatroskaReadCommon * common, guint track_num); GstFlowReturn gst_matroska_read_common_read_track_encoding (