tizen 2.0 init
[framework/multimedia/gst-plugins-base0.10.git] / ext / vorbis / gstvorbisenc.h
index 9375a16..ffc60e6 100644 (file)
@@ -23,6 +23,7 @@
 
 
 #include <gst/gst.h>
+#include <gst/audio/gstaudioencoder.h>
 
 #include <vorbis/codec.h>
 
@@ -48,14 +49,11 @@ typedef struct _GstVorbisEncClass GstVorbisEncClass;
  * Opaque data structure.
  */
 struct _GstVorbisEnc {
-  GstElement       element;
+  GstAudioEncoder element;
 
-  GstPad          *sinkpad;
-  GstPad          *srcpad;
-
-  GstCaps         *srccaps;
   GstCaps         *sinkcaps;
 
+  /* codec */
   vorbis_info      vi; /* struct that stores all the static vorbis bitstream
                                                             settings */
   vorbis_comment   vc; /* struct that stores all the user comments */
@@ -63,6 +61,7 @@ struct _GstVorbisEnc {
   vorbis_dsp_state vd; /* central working state for the packet->PCM decoder */
   vorbis_block     vb; /* local working space for packet->PCM decode */
 
+  /* properties */
   gboolean         managed;
   gint             bitrate;
   gint             min_bitrate;
@@ -74,24 +73,19 @@ struct _GstVorbisEnc {
   gint             frequency;
 
   guint64          samples_in;
+  guint64          samples_out;
   guint64          bytes_out;
-  GstClockTime     next_ts;
-  GstClockTime     expected_ts;
-  gboolean         next_discont;
-  guint64          granulepos_offset;
-  gint64           subgranule_offset;
-  GstSegment       segment;
-  GstClockTime     initial_ts;
 
   GstTagList *     tags;
 
   gboolean         setup;
   gboolean         header_sent;
   gchar           *last_message;
+  GSList          *headers;
 };
 
 struct _GstVorbisEncClass {
-  GstElementClass parent_class;
+  GstAudioEncoderClass parent_class;
 };
 
 GType gst_vorbis_enc_get_type(void);