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__   */