| GStreamer Bad Plugins 0.10 Plugins Reference Manual | ||||
|---|---|---|---|---|
| Top | Description | ||||
plugin |
directdraw |
author |
Sebastien Moutte <sebastien@moutte.net> |
class |
Sink/Video |
struct GstDirectDrawSink {
GstVideoSink videosink;
/* directdraw offscreen surfaces pool */
GSList *buffer_pool;
GMutex *pool_lock;
/* directdraw objects */
LPDIRECTDRAW ddraw_object;
LPDIRECTDRAWSURFACE primary_surface;
LPDIRECTDRAWSURFACE offscreen_surface;
LPDIRECTDRAWCLIPPER clipper;
/* last buffer displayed (used for XOverlay interface expose method) */
GstBuffer * last_buffer;
/* directdraw caps */
GstCaps *caps;
/* video window management */
HWND video_window;
gboolean our_video_window;
HANDLE window_created_signal;
/* video properties */
gint video_width, video_height;
gint out_width, out_height;
gint fps_n;
gint fps_d;
/* properties */
gboolean keep_aspect_ratio;
/*pixel format */
DDPIXELFORMAT dd_pixel_format;
/* thread processing our default window messages */
GThread *window_thread;
/* TRUE when directdraw object is set up */
gboolean setup;
/* TRUE if the hardware supports blitting from one colorspace to another */
gboolean can_blit_between_colorspace;
/* This flag is used to force re-creation of our offscreen surface.
* It's needed when hardware doesn't support fourcc blit and the bit depth
* of the current display mode changes.
*/
gboolean must_recreate_offscreen;
};