www.pudn.com > gsts2ps.rar > gstts2ps.h
/////////////gstts2ps.h
#ifndef __GST_TS2PS_H__
#define __GST_TS2PS_H__
#include
#include
#include
G_BEGIN_DECLS
#define DEFAULT_BUFFERSIZE 4096
/* #define's don't like whitespacey bits */
#define GST_TYPE_TS2PS \
(gst_ts2ps_get_type())
#define GST_TS2PS(obj) \
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_TS2PS,GstTs2Ps))
#define GST_TS2PS_CLASS(klass) \
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_TS2PS,GstTs2PsClass))
#define GST_IS_TS2PS(obj) \
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_TS2PS))
#define GST_IS_TS2PS_CLASS(obj) \
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_TS2PS))
typedef struct _GstTs2Ps GstTs2Ps;
typedef struct _GstTs2PsClass GstTs2PsClass;
struct _GstTs2Ps
{
GstTsParse ts_parse;
/* TODO: parse to pes or ps
PES-only streams currently not supported by the mpegdemuxer
gboolean ps; */
ipack pa;
ipack pv;
uint8_t* ps_buffer;
int ps_off;
gboolean finished;
uint8_t* out_buffer;
int buffersize;
uint16_t vpid;
uint16_t apid;
};
struct _GstTs2PsClass
{
GstTsParseClass parent_class;
void (*handle_event) (GstTsParse *object, GstEvent *event);
};
GType gst_ts2ps_get_type (void);
gboolean gst_ts2ps_plugin_init (GstPlugin *plugin);
G_END_DECLS
#endif /* __GST_TS2PS_H__ */