* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
p_vout->i_synchro_level = VOUT_SYNCHRO_LEVEL_START;
/* Create and initialize system-dependant method - this function issues its
p_vout->i_synchro_level = VOUT_SYNCHRO_LEVEL_START;
/* Create and initialize system-dependant method - this function issues its
intf_DbgMsg("subpicture %p: type=%d, begin date=%s, end date=%s\n",
p_subpic, p_subpic->i_type,
mstrtime( psz_begin_date, p_subpic->begin_date ),
intf_DbgMsg("subpicture %p: type=%d, begin date=%s, end date=%s\n",
p_subpic, p_subpic->i_type,
mstrtime( psz_begin_date, p_subpic->begin_date ),
*****************************************************************************
* This function create a reserved subpicture in the video output heap.
* A null pointer is returned if the function fails. This method provides an
*****************************************************************************
* This function create a reserved subpicture in the video output heap.
* A null pointer is returned if the function fails. This method provides an
* found, but a destroyed subpicture is still avalaible */
free( p_destroyed_subpic->p_data );
p_free_subpic = p_destroyed_subpic;
* found, but a destroyed subpicture is still avalaible */
free( p_destroyed_subpic->p_data );
p_free_subpic = p_destroyed_subpic;
p_free_subpic->i_type = i_type;
p_free_subpic->i_status = RESERVED_SUBPICTURE;
p_free_subpic->i_size = i_size;
p_free_subpic->i_type = i_type;
p_free_subpic->i_status = RESERVED_SUBPICTURE;
p_free_subpic->i_size = i_size;
p_free_picture->i_type = i_type;
p_free_picture->i_status = RESERVED_PICTURE;
p_free_picture->i_matrix_coefficients = 1;
p_free_picture->i_type = i_type;
p_free_picture->i_status = RESERVED_PICTURE;
p_free_picture->i_matrix_coefficients = 1;
/* Set picture dimensions and clear buffer */
SetBufferPicture( p_vout, p_pic );
/* Set picture dimensions and clear buffer */
SetBufferPicture( p_vout, p_pic );
* Print: print simple text on a picture
*****************************************************************************
* This function will print a simple text on the picture. It is designed to
* Print: print simple text on a picture
*****************************************************************************
* This function will print a simple text on the picture. It is designed to
*****************************************************************************/
void Print( vout_thread_t *p_vout, int i_x, int i_y, int i_h_align, int i_v_align, unsigned char *psz_text )
{
*****************************************************************************/
void Print( vout_thread_t *p_vout, int i_x, int i_y, int i_h_align, int i_v_align, unsigned char *psz_text )
{
if( i_area == p_buffer->i_areas )
{
/* New area is below all existing ones: just add it at the end of the
if( i_area == p_buffer->i_areas )
{
/* New area is below all existing ones: just add it at the end of the
/*****************************************************************************
* RenderPicture: render a picture
*****************************************************************************
/*****************************************************************************
* RenderPicture: render a picture
*****************************************************************************
- * This function convert a picture from a video heap to a pixel-encoded image
- * and copy it to the current rendering buffer. No lock is required, since the
- * rendered picture has been determined as existant, and will only be destroyed
- * by the vout thread later.
+ * This function converts a picture from a video heap to a pixel-encoded image
+ * and copies it to the current rendering buffer. No lock is required, since
+ * the * rendered picture has been determined as existant, and will only be
+ * destroyed by the vout thread later.
*****************************************************************************/
static void RenderPicture( vout_thread_t *p_vout, picture_t *p_pic )
{
*****************************************************************************/
static void RenderPicture( vout_thread_t *p_vout, picture_t *p_pic )
{
p_buffer = &p_vout->p_buffer[ p_vout->i_buffer_index ];
p_pic_data = p_buffer->p_data +
p_buffer->i_pic_x * p_vout->i_bytes_per_pixel +
p_buffer = &p_vout->p_buffer[ p_vout->i_buffer_index ];
p_pic_data = p_buffer->p_data +
p_buffer->i_pic_x * p_vout->i_bytes_per_pixel +
*****************************************************************************/
static void RenderPictureInfo( vout_thread_t *p_vout, picture_t *p_pic )
{
*****************************************************************************/
static void RenderPictureInfo( vout_thread_t *p_vout, picture_t *p_pic )
{
*****************************************************************************/
static void RenderInfo( vout_thread_t *p_vout )
{
*****************************************************************************/
static void RenderInfo( vout_thread_t *p_vout )
{
/*****************************************************************************
* RenderSubPicture: render a subpicture
*****************************************************************************
/*****************************************************************************
* RenderSubPicture: render a subpicture
*****************************************************************************
*****************************************************************************/
static void RenderSubPicture( vout_thread_t *p_vout, subpicture_t *p_subpic )
{
*****************************************************************************/
static void RenderSubPicture( vout_thread_t *p_vout, subpicture_t *p_subpic )
{
/*****************************************************************************
* RenderInterface: render the interface
*****************************************************************************
/*****************************************************************************
* RenderInterface: render the interface
*****************************************************************************
*****************************************************************************/
static void RenderInterface( vout_thread_t *p_vout )
{
*****************************************************************************/
static void RenderInterface( vout_thread_t *p_vout )
{