diff options
author | Wim Taymans <wim.taymans@gmail.com> | 2004-09-28 16:44:12 +0000 |
---|---|---|
committer | Wim Taymans <wim.taymans@gmail.com> | 2004-09-28 16:44:12 +0000 |
commit | 2748ae95482b17103909d2b9f0d65f3fb0948388 (patch) | |
tree | b09f604391722085286899789fb0c3c58d38f88d /ext/speex/gstspeexdec.h | |
parent | 0089ff9ed3851854071c74e82039b95e38940641 (diff) |
ext/speex/: Rewrote speex encoder, make sure it can be embedded in ogg.
Original commit message from CVS:
* ext/speex/gstspeex.c: (plugin_init):
* ext/speex/gstspeexdec.c: (gst_speex_dec_base_init),
(gst_speex_dec_class_init), (speex_dec_get_formats),
(speex_get_event_masks), (speex_get_query_types),
(gst_speex_dec_init), (speex_dec_convert), (speex_dec_src_query),
(speex_dec_src_event), (speex_dec_event), (speex_dec_chain),
(gst_speexdec_get_property), (gst_speexdec_set_property),
(speex_dec_change_state):
* ext/speex/gstspeexdec.h:
* ext/speex/gstspeexenc.c: (gst_speexenc_get_formats),
(gst_speexenc_get_type), (speex_caps_factory), (raw_caps_factory),
(gst_speexenc_base_init), (gst_speexenc_class_init),
(gst_speexenc_sinkconnect), (gst_speexenc_convert_src),
(gst_speexenc_convert_sink), (gst_speexenc_get_query_types),
(gst_speexenc_src_query), (gst_speexenc_init),
(gst_speexenc_get_tag_value), (comment_init), (comment_add),
(gst_speexenc_metadata_set1), (gst_speexenc_set_metadata),
(gst_speexenc_setup), (gst_speexenc_buffer_from_data),
(gst_speexenc_push_buffer), (gst_speexenc_set_header_on_caps),
(gst_speexenc_chain), (gst_speexenc_get_property),
(gst_speexenc_set_property), (gst_speexenc_change_state):
* ext/speex/gstspeexenc.h:
Rewrote speex encoder, make sure it can be embedded in ogg.
Implemented speex decoder.
Diffstat (limited to 'ext/speex/gstspeexdec.h')
-rw-r--r-- | ext/speex/gstspeexdec.h | 26 |
1 files changed, 23 insertions, 3 deletions
diff --git a/ext/speex/gstspeexdec.h b/ext/speex/gstspeexdec.h index c679dc18..dcb04a2c 100644 --- a/ext/speex/gstspeexdec.h +++ b/ext/speex/gstspeexdec.h @@ -23,7 +23,10 @@ #include <gst/gst.h> -#include <speex.h> +#include <speex/speex.h> +#include <speex/speex_callbacks.h> +#include <speex/speex_header.h> +#include <speex/speex_stereo.h> #ifdef __cplusplus extern "C" { @@ -31,7 +34,7 @@ extern "C" { #define GST_TYPE_SPEEXDEC \ - (gst_speexdec_get_type()) + (gst_speex_dec_get_type()) #define GST_SPEEXDEC(obj) \ (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_SPEEXDEC,GstSpeexDec)) #define GST_SPEEXDEC_CLASS(klass) \ @@ -44,18 +47,35 @@ extern "C" { typedef struct _GstSpeexDec GstSpeexDec; typedef struct _GstSpeexDecClass GstSpeexDecClass; +#define DEC_MAX_FRAME_SIZE 2000 + struct _GstSpeexDec { GstElement element; /* pads */ GstPad *sinkpad,*srcpad; + + void *state; + SpeexStereoState stereo; + SpeexMode *mode; + SpeexHeader *header; + SpeexCallback callback; + SpeexBits bits; + + gfloat output[DEC_MAX_FRAME_SIZE]; + + gboolean enh; + + gint frame_size; + guint64 samples_out; + guint64 packetno; }; struct _GstSpeexDecClass { GstElementClass parent_class; }; -GType gst_speexdec_get_type(void); +GType gst_speex_dec_get_type(void); #ifdef __cplusplus |