From e6c86a500d6e09439a54a82e2cfa2af9f13c5228 Mon Sep 17 00:00:00 2001 From: Zaheer Abbas Merali Date: Mon, 20 Aug 2007 14:23:45 +0000 Subject: Add mpeg transport stream parser written by: Original commit message from CVS: * configure.ac: * gst/mpegtsparse/Makefile.am: * gst/mpegtsparse/flutspatinfo.c: * gst/mpegtsparse/flutspatinfo.h: * gst/mpegtsparse/flutspmtinfo.c: * gst/mpegtsparse/flutspmtinfo.h: * gst/mpegtsparse/flutspmtstreaminfo.c: * gst/mpegtsparse/flutspmtstreaminfo.h: * gst/mpegtsparse/mpegtspacketizer.c: * gst/mpegtsparse/mpegtspacketizer.h: * gst/mpegtsparse/mpegtsparse.c: * gst/mpegtsparse/mpegtsparse.h: * gst/mpegtsparse/mpegtsparsemarshal.list: Add mpeg transport stream parser written by: Alessandro Decina. Includes a couple of files from the Fluendo transport stream demuxer that Fluendo have kindly allowed to be licenced under LGPL also. --- gst/mpegtsparse/flutspmtstreaminfo.h | 55 ++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 gst/mpegtsparse/flutspmtstreaminfo.h (limited to 'gst/mpegtsparse/flutspmtstreaminfo.h') diff --git a/gst/mpegtsparse/flutspmtstreaminfo.h b/gst/mpegtsparse/flutspmtstreaminfo.h new file mode 100644 index 00000000..a3d43917 --- /dev/null +++ b/gst/mpegtsparse/flutspmtstreaminfo.h @@ -0,0 +1,55 @@ +/* + * The contents of this file are subject to the Mozilla Public License + * Version 1.1 (the "License"); you may not use this file except in + * compliance with the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/. + * + * Software distributed under the License is distributed on an "AS IS" + * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the + * License for the specific language governing rights and limitations + * under the License. + * + * The Original Code is Fluendo MPEG Demuxer plugin. + * + * The Initial Developer of the Original Code is Fluendo, S.L. + * Portions created by Fluendo, S.L. are Copyright (C) 2005 + * Fluendo, S.L. All Rights Reserved. + * + * Contributor(s): Jan Schmidt + */ + +#ifndef __MPEGTS_PMT_STREAM_INFO_H__ +#define __MPEGTS_PMT_STREAM_INFO_H__ + +#include + +G_BEGIN_DECLS + + +typedef struct MpegTSPmtStreamInfoClass { + GObjectClass parent_class; +} MpegTSPmtStreamInfoClass; + +typedef struct MpegTSPmtStreamInfo { + GObject parent; + + guint16 pid; + GValueArray *languages; /* null terminated 3 character ISO639 language code */ + guint8 stream_type; + GValueArray *descriptors; +} MpegTSPmtStreamInfo; + +MpegTSPmtStreamInfo *mpegts_pmt_stream_info_new (guint16 pid, guint8 type); +void mpegts_pmt_stream_info_add_language(MpegTSPmtStreamInfo* si, gchar* language); +void mpegts_pmt_stream_info_add_descriptor (MpegTSPmtStreamInfo *si, const gchar *descriptor, guint length); + +GType mpegts_pmt_stream_info_get_type (void); + +#define MPEGTS_TYPE_PMT_STREAM_INFO (mpegts_pmt_stream_info_get_type ()) + +#define MPEGTS_IS_PMT_STREAM_INFO(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), MPEGTS_TYPE_PMT_STREAM_INFO)) +#define MPEGTS_PMT_STREAM_INFO(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),MPEGTS_TYPE_PMT_STREAM_INFO, MpegTSPmtStreamInfo)) + +G_END_DECLS + +#endif -- cgit v1.2.1