diff options
author | Wim Taymans <wim.taymans@gmail.com> | 2005-07-07 17:03:47 +0000 |
---|---|---|
committer | Wim Taymans <wim.taymans@gmail.com> | 2005-07-07 17:03:47 +0000 |
commit | 1970ac0fc79addbbb8087222e5a0c4ed7e9885bd (patch) | |
tree | f1a5986263fd5d9760be13115e6c93f3a81cdb44 /ext/dv/gstdvdec.h | |
parent | 16e4cd8b38d10ff0ae953c807aae9b320472c29f (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.h | 48 |
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__ */ |