gst: Update versioning
[platform/upstream/gst-plugins-good.git] / gst / wavparse / gstwavparse.h
index 9dd32e5..82838e4 100644 (file)
@@ -1,6 +1,6 @@
 /* GStreamer
  * Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu>
- * Copyright (C) <2006> Nokia Corporation.
+ * Copyright (C) <2006> Nokia Corporation, Stefan Kost <stefan.kost@nokia.com>.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Library General Public
@@ -44,7 +44,7 @@ G_BEGIN_DECLS
 typedef enum {
   GST_WAVPARSE_START,
   GST_WAVPARSE_HEADER,
-  GST_WAVPARSE_DATA,
+  GST_WAVPARSE_DATA
 } GstWavParseState;
 
 typedef struct _GstWavParse GstWavParse;
@@ -66,23 +66,30 @@ struct _GstWavParse {
    * the format for sure */
   GstCaps     *caps;
   GstTagList  *tags;
-  GstEvent    *newsegment;
+  GstEvent    *start_segment;
 
   /* WAVE decoding state */
   GstWavParseState state;
+  gboolean abort_buffering;
 
   /* format of audio, see defines below */
   gint format;
 
   /* useful audio data */
   guint16 depth;
-  gint rate;
+  guint32 rate;
   guint16 channels;
   guint16 blockalign;
   guint16 width;
+  guint32 av_bps;
+  guint32 fact;
+
+  /* real bps used or 0 when no bitrate is known */
   guint32 bps;
+  gboolean vbr;
 
   guint bytes_per_sample;
+  guint max_buf_size;
 
   /* position in data part */
   guint64      offset;
@@ -91,7 +98,9 @@ struct _GstWavParse {
   /* offset/length of data part */
   guint64      datastart;
   guint64      datasize;
-  
+  /* duration in time */
+  guint64      duration;
+
   /* pending seek */
   GstEvent *seek_event;
 
@@ -100,9 +109,15 @@ struct _GstWavParse {
   gboolean got_fmt;
   gboolean streaming;
 
-  /* configured segment, start/stop expressed in time */
+  /* configured segment, start/stop expressed in time or bytes */
   GstSegment segment;
-  gboolean segment_running;
+
+  /* for late pad configuration */
+  gboolean first;
+  /* discont after seek */
+  gboolean discont;
+
+  gboolean ignore_length;
 };
 
 struct _GstWavParseClass {