2005-11-06 21:55:01 +00:00
|
|
|
<MACRO>
|
|
|
|
<NAME>GST_TYPE_DFBVIDEOSINK</NAME>
|
|
|
|
#define GST_TYPE_DFBVIDEOSINK (gst_dfbvideosink_get_type())
|
|
|
|
</MACRO>
|
|
|
|
<MACRO>
|
|
|
|
<NAME>GST_DFBVIDEOSINK</NAME>
|
|
|
|
#define GST_DFBVIDEOSINK(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_DFBVIDEOSINK, GstDfbVideoSink))
|
|
|
|
</MACRO>
|
|
|
|
<MACRO>
|
|
|
|
<NAME>GST_DFBVIDEOSINK_CLASS</NAME>
|
|
|
|
#define GST_DFBVIDEOSINK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_DFBVIDEOSINK, GstDfbVideoSink))
|
|
|
|
</MACRO>
|
|
|
|
<MACRO>
|
|
|
|
<NAME>GST_IS_DFBVIDEOSINK</NAME>
|
|
|
|
#define GST_IS_DFBVIDEOSINK(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_DFBVIDEOSINK))
|
|
|
|
</MACRO>
|
|
|
|
<MACRO>
|
|
|
|
<NAME>GST_IS_DFBVIDEOSINK_CLASS</NAME>
|
|
|
|
#define GST_IS_DFBVIDEOSINK_CLASS(obj) (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_DFBVIDEOSINK))
|
|
|
|
</MACRO>
|
|
|
|
<STRUCT>
|
|
|
|
<NAME>GstDfbVideoSink</NAME>
|
|
|
|
</STRUCT>
|
|
|
|
<STRUCT>
|
|
|
|
<NAME>GstDfbVideoSinkClass</NAME>
|
|
|
|
</STRUCT>
|
|
|
|
<MACRO>
|
|
|
|
<NAME>GST_TYPE_DFBSURFACE</NAME>
|
|
|
|
#define GST_TYPE_DFBSURFACE (gst_dfbsurface_get_type())
|
|
|
|
</MACRO>
|
|
|
|
<MACRO>
|
|
|
|
<NAME>GST_IS_DFBSURFACE</NAME>
|
|
|
|
#define GST_IS_DFBSURFACE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_DFBSURFACE))
|
|
|
|
</MACRO>
|
|
|
|
<MACRO>
|
|
|
|
<NAME>GST_DFBSURFACE</NAME>
|
|
|
|
#define GST_DFBSURFACE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_DFBSURFACE, GstDfbSurface))
|
|
|
|
</MACRO>
|
|
|
|
<STRUCT>
|
|
|
|
<NAME>GstDfbSurface</NAME>
|
|
|
|
</STRUCT>
|
|
|
|
<STRUCT>
|
|
|
|
<NAME>GstDfbSurface</NAME>
|
|
|
|
struct _GstDfbSurface {
|
|
|
|
GstBuffer buffer; /* We extend GstBuffer */
|
|
|
|
|
|
|
|
IDirectFBSurface *surface;
|
|
|
|
|
|
|
|
gint width;
|
|
|
|
gint height;
|
|
|
|
|
|
|
|
gboolean locked;
|
|
|
|
|
|
|
|
DFBSurfacePixelFormat pixel_format;
|
|
|
|
|
|
|
|
GstDfbVideoSink *dfbvideosink;
|
|
|
|
};
|
|
|
|
</STRUCT>
|
|
|
|
<STRUCT>
|
|
|
|
<NAME>GstDfbVMode</NAME>
|
|
|
|
</STRUCT>
|
|
|
|
<STRUCT>
|
|
|
|
<NAME>GstDfbVMode</NAME>
|
|
|
|
struct _GstDfbVMode {
|
|
|
|
gint width;
|
|
|
|
gint height;
|
|
|
|
gint bpp;
|
|
|
|
};
|
|
|
|
</STRUCT>
|
|
|
|
<STRUCT>
|
|
|
|
<NAME>GstDfbVideoSink</NAME>
|
|
|
|
struct _GstDfbVideoSink {
|
|
|
|
/* Our element stuff */
|
|
|
|
GstVideoSink videosink;
|
|
|
|
|
Use fraction for framerate, various fixes.
Original commit message from CVS:
2005-11-23 Julien MOUTTE <julien@moutte.net>
* docs/plugins/gst-plugins-bad-plugins-decl.txt:
* ext/directfb/dfb-example.c: (main):
* ext/directfb/dfbvideosink.c:
(gst_dfbvideosink_surface_destroy),
(gst_dfbvideosink_event_thread), (gst_dfbvideosink_setup),
(gst_dfbvideosink_getcaps), (gst_dfbvideosink_setcaps),
(gst_dfbvideosink_change_state), (gst_dfbvideosink_get_times),
(gst_dfbvideosink_bufferpool_clear),
(gst_dfbvideosink_buffer_alloc), (gst_dfbsurface_finalize),
(gst_dfbvideosink_navigation_send_event),
(gst_dfbvideosink_finalize), (gst_dfbvideosink_init),
(gst_dfbvideosink_class_init):
* ext/directfb/dfbvideosink.h: Use fraction for framerate,
various
fixes.
2005-11-23 18:05:16 +00:00
|
|
|
GMutex *pool_lock;
|
2005-11-06 21:55:01 +00:00
|
|
|
GSList *buffer_pool;
|
|
|
|
|
Use fraction for framerate, various fixes.
Original commit message from CVS:
2005-11-23 Julien MOUTTE <julien@moutte.net>
* docs/plugins/gst-plugins-bad-plugins-decl.txt:
* ext/directfb/dfb-example.c: (main):
* ext/directfb/dfbvideosink.c:
(gst_dfbvideosink_surface_destroy),
(gst_dfbvideosink_event_thread), (gst_dfbvideosink_setup),
(gst_dfbvideosink_getcaps), (gst_dfbvideosink_setcaps),
(gst_dfbvideosink_change_state), (gst_dfbvideosink_get_times),
(gst_dfbvideosink_bufferpool_clear),
(gst_dfbvideosink_buffer_alloc), (gst_dfbsurface_finalize),
(gst_dfbvideosink_navigation_send_event),
(gst_dfbvideosink_finalize), (gst_dfbvideosink_init),
(gst_dfbvideosink_class_init):
* ext/directfb/dfbvideosink.h: Use fraction for framerate,
various
fixes.
2005-11-23 18:05:16 +00:00
|
|
|
/* Framerate numerator and denominator */
|
|
|
|
gint fps_n;
|
|
|
|
gint fps_d;
|
|
|
|
|
2005-11-06 21:55:01 +00:00
|
|
|
gint video_width, video_height; /* size of incoming video */
|
|
|
|
gint out_width, out_height;
|
|
|
|
|
|
|
|
/* Standalone */
|
|
|
|
IDirectFB *dfb;
|
|
|
|
|
|
|
|
GSList *vmodes; /* Video modes */
|
|
|
|
|
|
|
|
gint layer_id;
|
|
|
|
IDirectFBDisplayLayer *layer;
|
|
|
|
IDirectFBSurface *primary;
|
|
|
|
IDirectFBEventBuffer *event_buffer;
|
|
|
|
GThread *event_thread;
|
|
|
|
|
|
|
|
/* Embedded */
|
|
|
|
IDirectFBSurface *ext_surface;
|
|
|
|
|
|
|
|
DFBSurfacePixelFormat pixel_format;
|
|
|
|
|
|
|
|
gboolean hw_scaling;
|
|
|
|
gboolean backbuffer;
|
docs/plugins/: Updates.
Original commit message from CVS:
2005-12-17 Julien MOUTTE <julien@moutte.net>
* docs/plugins/gst-plugins-bad-plugins-decl.txt:
* docs/plugins/gst-plugins-bad-plugins-docs.sgml:
* docs/plugins/gst-plugins-bad-plugins-undocumented.txt:
* docs/plugins/gst-plugins-bad-plugins.args:
* docs/plugins/gst-plugins-bad-plugins.interfaces:
* docs/plugins/gst-plugins-bad-plugins.signals:
* docs/plugins/inspect/plugin-dfbvideosink.xml:
* docs/plugins/inspect/plugin-qtdemux.xml:
* docs/plugins/inspect/plugin-sdlvideosink.xml:
* docs/plugins/inspect/plugin-speed.xml:
* docs/plugins/inspect/plugin-tta.xml: Updates.
* ext/directfb/dfbvideosink.c:
(gst_dfbvideosink_surface_create),
(gst_dfbvideosink_event_thread), (gst_dfbvideosink_enum_vmodes),
(gst_dfbvideosink_enum_devices), (gst_dfbvideosink_setup),
(gst_dfbvideosink_cleanup),
(gst_dfbvideosink_can_blit_from_format),
(gst_dfbvideosink_get_best_vmode), (gst_dfbvideosink_getcaps),
(gst_dfbvideosink_setcaps), (gst_dfbvideosink_show_frame),
(gst_dfbvideosink_buffer_alloc), (gst_dfbsurface_finalize),
(gst_dfbvideosink_interface_supported),
(gst_dfbvideosink_navigation_send_event),
(gst_dfbvideosink_update_colorbalance),
(gst_dfbvideosink_colorbalance_list_channels),
(gst_dfbvideosink_colorbalance_set_value),
(gst_dfbvideosink_colorbalance_get_value),
(gst_dfbvideosink_colorbalance_init),
(gst_dfbvideosink_set_property),
(gst_dfbvideosink_get_property),
(gst_dfbvideosink_init), (gst_dfbvideosink_class_init):
* ext/directfb/dfbvideosink.h: Implement vertical sync and
color balance interface.
2005-12-17 17:48:38 +00:00
|
|
|
gboolean vsync;
|
2005-11-06 21:55:01 +00:00
|
|
|
gboolean setup;
|
|
|
|
gboolean running;
|
docs/plugins/: Updates.
Original commit message from CVS:
2005-12-17 Julien MOUTTE <julien@moutte.net>
* docs/plugins/gst-plugins-bad-plugins-decl.txt:
* docs/plugins/gst-plugins-bad-plugins-docs.sgml:
* docs/plugins/gst-plugins-bad-plugins-undocumented.txt:
* docs/plugins/gst-plugins-bad-plugins.args:
* docs/plugins/gst-plugins-bad-plugins.interfaces:
* docs/plugins/gst-plugins-bad-plugins.signals:
* docs/plugins/inspect/plugin-dfbvideosink.xml:
* docs/plugins/inspect/plugin-qtdemux.xml:
* docs/plugins/inspect/plugin-sdlvideosink.xml:
* docs/plugins/inspect/plugin-speed.xml:
* docs/plugins/inspect/plugin-tta.xml: Updates.
* ext/directfb/dfbvideosink.c:
(gst_dfbvideosink_surface_create),
(gst_dfbvideosink_event_thread), (gst_dfbvideosink_enum_vmodes),
(gst_dfbvideosink_enum_devices), (gst_dfbvideosink_setup),
(gst_dfbvideosink_cleanup),
(gst_dfbvideosink_can_blit_from_format),
(gst_dfbvideosink_get_best_vmode), (gst_dfbvideosink_getcaps),
(gst_dfbvideosink_setcaps), (gst_dfbvideosink_show_frame),
(gst_dfbvideosink_buffer_alloc), (gst_dfbsurface_finalize),
(gst_dfbvideosink_interface_supported),
(gst_dfbvideosink_navigation_send_event),
(gst_dfbvideosink_update_colorbalance),
(gst_dfbvideosink_colorbalance_list_channels),
(gst_dfbvideosink_colorbalance_set_value),
(gst_dfbvideosink_colorbalance_get_value),
(gst_dfbvideosink_colorbalance_init),
(gst_dfbvideosink_set_property),
(gst_dfbvideosink_get_property),
(gst_dfbvideosink_init), (gst_dfbvideosink_class_init):
* ext/directfb/dfbvideosink.h: Implement vertical sync and
color balance interface.
2005-12-17 17:48:38 +00:00
|
|
|
|
|
|
|
/* Color balance */
|
|
|
|
GList *cb_channels;
|
|
|
|
gint brightness;
|
|
|
|
gint contrast;
|
|
|
|
gint hue;
|
|
|
|
gint saturation;
|
|
|
|
gboolean cb_changed;
|
docs/plugins/: Updates.
Original commit message from CVS:
2005-12-18 Julien MOUTTE <julien@moutte.net>
* docs/plugins/gst-plugins-bad-plugins-decl.txt:
* docs/plugins/gst-plugins-bad-plugins-undocumented.txt:
Updates.
* ext/directfb/dfbvideosink.c:
(gst_dfbvideosink_surface_create),
(gst_dfbvideosink_event_thread),
(gst_dfbvideosink_enum_devices),
(gst_dfbvideosink_setup), (gst_dfbvideosink_cleanup),
(gst_dfbvideosink_can_blit_from_format),
(gst_dfbvideosink_getcaps), (gst_dfbvideosink_setcaps),
(gst_dfbvideosink_show_frame), (gst_dfbvideosink_buffer_alloc),
(gst_dfbsurface_finalize),
(gst_dfbvideosink_navigation_send_event),
(gst_dfbvideosink_update_colorbalance),
(gst_dfbvideosink_set_property),
(gst_dfbvideosink_get_property),
(gst_dfbvideosink_finalize), (gst_dfbvideosink_init),
(gst_dfbvideosink_class_init):
* ext/directfb/dfbvideosink.h: Implement pixel-aspect-ratio.
This should work both for hardware accelerated scaling and
reverse caps negotiation with a scaling element.
2005-12-18 10:58:44 +00:00
|
|
|
|
|
|
|
/* object-set pixel aspect ratio */
|
|
|
|
GValue *par;
|
2005-11-06 21:55:01 +00:00
|
|
|
};
|
|
|
|
</STRUCT>
|
|
|
|
<STRUCT>
|
|
|
|
<NAME>GstDfbVideoSinkClass</NAME>
|
|
|
|
struct _GstDfbVideoSinkClass {
|
|
|
|
GstVideoSinkClass parent_class;
|
|
|
|
};
|
|
|
|
</STRUCT>
|
|
|
|
<FUNCTION>
|
|
|
|
<NAME>gst_dfbvideosink_get_type</NAME>
|
|
|
|
<RETURNS>GType </RETURNS>
|
|
|
|
void
|
|
|
|
</FUNCTION>
|
|
|
|
<FUNCTION>
|
|
|
|
<NAME>gst_dfbsurface_get_type</NAME>
|
|
|
|
<RETURNS>GType </RETURNS>
|
|
|
|
void
|
|
|
|
</FUNCTION>
|
2006-04-01 16:50:49 +00:00
|
|
|
<STRUCT>
|
|
|
|
<NAME>GstTagLibMuxPriv</NAME>
|
|
|
|
</STRUCT>
|
|
|
|
<STRUCT>
|
|
|
|
<NAME>GstTagLibMux</NAME>
|
|
|
|
typedef struct _GstTagLibMux {
|
|
|
|
GstElement element;
|
|
|
|
|
|
|
|
GstPad *srcpad;
|
|
|
|
GstPad *sinkpad;
|
|
|
|
GstTagList *event_tags; /* tags received from upstream elements */
|
|
|
|
gsize tag_size;
|
|
|
|
gboolean render_tag;
|
|
|
|
|
|
|
|
GstEvent *newsegment_ev; /* cached newsegment event from upstream */
|
|
|
|
} GstTagLibMux;
|
|
|
|
</STRUCT>
|
|
|
|
<STRUCT>
|
|
|
|
<NAME>GstTagLibMuxClass</NAME>
|
|
|
|
typedef struct _GstTagLibMuxClass {
|
|
|
|
GstElementClass parent_class;
|
|
|
|
} GstTagLibMuxClass;
|
|
|
|
</STRUCT>
|
|
|
|
<MACRO>
|
|
|
|
<NAME>GST_TYPE_TAGLIB_MUX</NAME>
|
|
|
|
#define GST_TYPE_TAGLIB_MUX \
|
|
|
|
(gst_tag_lib_mux_get_type())
|
|
|
|
</MACRO>
|
|
|
|
<MACRO>
|
|
|
|
<NAME>GST_TAGLIB_MUX</NAME>
|
|
|
|
#define GST_TAGLIB_MUX(obj) \
|
|
|
|
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_TAGLIB_MUX,GstTagLibMux))
|
|
|
|
</MACRO>
|
|
|
|
<MACRO>
|
|
|
|
<NAME>GST_TAGLIB_MUX_CLASS</NAME>
|
|
|
|
#define GST_TAGLIB_MUX_CLASS(klass) \
|
|
|
|
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_TAGLIB_MUX,GstTagLibMuxClass))
|
|
|
|
</MACRO>
|
|
|
|
<MACRO>
|
|
|
|
<NAME>GST_IS_TAGLIB_MUX</NAME>
|
|
|
|
#define GST_IS_TAGLIB_MUX(obj) \
|
|
|
|
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_TAGLIB_MUX))
|
|
|
|
</MACRO>
|
|
|
|
<MACRO>
|
|
|
|
<NAME>GST_IS_TAGLIB_MUX_CLASS</NAME>
|
|
|
|
#define GST_IS_TAGLIB_MUX_CLASS(klass) \
|
|
|
|
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_TAGLIB_MUX))
|
|
|
|
</MACRO>
|
|
|
|
<FUNCTION>
|
|
|
|
<NAME>gst_tag_lib_mux_get_type</NAME>
|
|
|
|
<RETURNS>GType </RETURNS>
|
|
|
|
void
|
|
|
|
</FUNCTION>
|