*/
VLC_PUBLIC_API int libvlc_video_reparent( libvlc_input_t *, libvlc_drawable_t, libvlc_exception_t * );
+/**
+ * Tell windowless video output to redraw rectangular area (MacOS X only)
+ * \param p_instance libvlc instance
+ * \param area coordinates within video drawable
+ * \param p_exception an initialized exception
+ */
+VLC_PUBLIC_API void libvlc_video_redraw_rectangle( libvlc_input_t *, const libvlc_rectangle_t *, libvlc_exception_t * );
+
/**
* Set the default video output parent
* this settings will be used as default for all video outputs
*/
VLC_PUBLIC_API void libvlc_video_set_viewport( libvlc_instance_t *, const libvlc_rectangle_t *, const libvlc_rectangle_t *, libvlc_exception_t * );
-
/** @} */
/**
VOUT_SNAPSHOT,
VOUT_CLOSE,
VOUT_SET_FOCUS, /* arg1= vlc_bool_t res= */
- VOUT_SET_VIEWPORT /* arg1= view rect, arg2=clip rect, res= */
+ VOUT_SET_VIEWPORT, /* arg1= view rect, arg2=clip rect, res= */
+ VOUT_REDRAW_RECT, /* arg1= area rect, res= */
};
typedef struct snapshot_t {
* Authors: Cl�ent Stenac <zorglub@videolan.org>
* Filippo Carone <littlejohn@videolan.org>
* Jean-Paul Saman <jpsaman _at_ m2x _dot_ nl>
+ * Damien Fouilleul <damienf a_t videolan dot org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
}
}
+void libvlc_video_redraw_rectangle( libvlc_input_t *p_input,
+ const libvlc_rectangle_t *area,
+ libvlc_exception_t *p_e )
+{
+ if( (NULL != area)
+ && ((area->bottom - area->top) > 0)
+ && ((area->right - area->left) > 0) )
+ {
+ vout_thread_t *p_vout = GetVout( p_input, p_e );
+ if( p_vout )
+ {
+ /* tell running vout to redraw area */
+ vout_Control( p_vout , VOUT_REDRAW_RECT,
+ area->top, area->left, area->bottom, area->right );
+ vlc_object_release( p_vout );
+ }
+ }
+}
+
/* global video settings */
void libvlc_video_set_parent( libvlc_instance_t *p_instance, libvlc_drawable_t d,