summaryrefslogtreecommitdiffstats
path: root/ext/dv/gstdvdec.h
diff options
context:
space:
mode:
authorWim Taymans <wim.taymans@gmail.com>2005-07-07 17:03:47 +0000
committerWim Taymans <wim.taymans@gmail.com>2005-07-07 17:03:47 +0000
commit1970ac0fc79addbbb8087222e5a0c4ed7e9885bd (patch)
treef1a5986263fd5d9760be13115e6c93f3a81cdb44 /ext/dv/gstdvdec.h
parent16e4cd8b38d10ff0ae953c807aae9b320472c29f (diff)
Ported DVdec to 0.9.
Original commit message from CVS: * configure.ac: * ext/dv/Makefile.am: * ext/dv/gstdvdec.c: (gst_dvdec_class_init), (gst_dvdec_init), (gst_dvdec_get_src_query_types), (gst_dvdec_src_query), (gst_dvdec_handle_sink_event), (gst_dvdec_handle_src_event), (gst_dvdec_video_getcaps), (gst_dvdec_video_setcaps), (gst_dvdec_decode_audio), (gst_dvdec_decode_video), (gst_dvdec_decode_frame), (gst_dvdec_chain), (gst_dvdec_change_state), (gst_dvdec_set_property), (gst_dvdec_get_property), (plugin_init): * ext/dv/gstdvdec.h: * ext/esd/esdsink.c: (gst_esdsink_class_init): Ported DVdec to 0.9. Parent of esdsink is GstAudioSink.
Diffstat (limited to 'ext/dv/gstdvdec.h')
-rw-r--r--ext/dv/gstdvdec.h48
1 files changed, 26 insertions, 22 deletions
diff --git a/ext/dv/gstdvdec.h b/ext/dv/gstdvdec.h
index cf62c3fd..12bb4315 100644
--- a/ext/dv/gstdvdec.h
+++ b/ext/dv/gstdvdec.h
@@ -23,14 +23,10 @@
#include <gst/gst.h>
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
-
+G_BEGIN_DECLS
#include <libdv/dv.h>
-#include <gst/bytestream/bytestream.h>
-
+#include <gst/base/gstadapter.h>
/* This is the definition of the element's object structure. */
typedef struct _GstDVDec GstDVDec;
@@ -44,36 +40,48 @@ struct _GstDVDec {
GstElement element;
/* We need to keep track of our pads, so we do so here. */
- GstPad *sinkpad,
- *videosrcpad,
- *audiosrcpad;
+ GstPad *sinkpad;
+ GstPad *videosrcpad;
+ GstPad *audiosrcpad;
dv_decoder_t *decoder;
gboolean clamp_luma;
gboolean clamp_chroma;
gint quality;
- GstByteStream *bs;
- dv_color_space_t space;
- gint bpp;
- gboolean PAL;
+ GstAdapter *adapter;
+ gint frame_len;
+
+ /* PAL or NTSC flag */
+ gboolean PAL;
+ /* video params */
gdouble framerate;
gint height;
+ gboolean wide;
+ /* audio params */
gint frequency;
gint channels;
- gboolean wide;
+
+ /* negotiated output */
+ dv_color_space_t space;
+ gint bpp;
gint length;
- gint framecount;
gint drop_factor;
- guint64 next_ts;
+ gint framecount;
+
+ guint64 timestamp;
+ guint64 duration;
+
guint64 audio_offset;
+ guint64 video_offset;
+
guint64 end_position;
gboolean need_discont;
gboolean new_media;
gboolean loop;
- gboolean found_header;
+ gboolean found_header;
gint16 *audio_buffers[4];
};
@@ -114,10 +122,6 @@ struct _GstDVDecClass {
*/
GType gst_dvdec_get_type(void);
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
+G_END_DECLS
#endif /* __GST_DVDEC_H__ */