X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=include%2Fvideo_output.h;h=105e13cb47c2b99e24442aa18c17d9867dd7754a;hb=6430cf048d35c748dd6f52212d0d32ee4f2d2946;hp=fb0fdb9969fd2b858f6ba823e9ec2cc6bc4088da;hpb=cc0f0bb6fd28d5ed3463be4a227990cbae8a849f;p=vlc diff --git a/include/video_output.h b/include/video_output.h index fb0fdb9969..105e13cb47 100644 --- a/include/video_output.h +++ b/include/video_output.h @@ -2,10 +2,10 @@ * video_output.h : video output thread * This module describes the programming interface for video output threads. * It includes functions allowing to open a new thread, send pictures to a - * thread, and destroy a previously oppenned video output thread. + * thread, and destroy a previously opened video output thread. ***************************************************************************** * Copyright (C) 1999, 2000 VideoLAN - * $Id: video_output.h,v 1.68 2001/12/30 07:09:54 sam Exp $ + * $Id: video_output.h,v 1.75 2002/04/25 21:52:42 sam Exp $ * * Authors: Vincent Seguin * @@ -39,7 +39,7 @@ typedef struct vout_bank_s } vout_bank_t; -#ifndef PLUGIN +#ifndef __PLUGIN__ extern vout_bank_t *p_vout_bank; #else # define p_vout_bank (p_symbols->p_vout_bank) @@ -110,7 +110,7 @@ typedef struct vout_thread_s vlc_mutex_t change_lock; /* thread change lock */ int * pi_status; /* temporary status flag */ p_vout_sys_t p_sys; /* system output method */ - + /* Current display properties */ u16 i_changes; /* changes made to the thread */ float f_gamma; /* gamma */ @@ -120,6 +120,8 @@ typedef struct vout_thread_s boolean_t b_scale; /* allow picture scaling */ boolean_t b_fullscreen; /* toogle fullscreen display */ mtime_t render_time; /* last picture render time */ + int i_window_width; /* video window width */ + int i_window_height; /* video window height */ /* Plugin used and shortcuts to access its capabilities */ struct module_s * p_module; @@ -128,10 +130,10 @@ typedef struct vout_thread_s void ( *pf_end ) ( struct vout_thread_s * ); void ( *pf_destroy ) ( struct vout_thread_s * ); int ( *pf_manage ) ( struct vout_thread_s * ); + void ( *pf_render ) ( struct vout_thread_s *, + struct picture_s * ); void ( *pf_display ) ( struct vout_thread_s *, struct picture_s * ); - void ( *pf_setpalette ) ( struct vout_thread_s *, - u16 *, u16 *, u16 * ); /* Statistics - these numbers are not supposed to be accurate, but are a * good indication of the thread status */ @@ -146,7 +148,7 @@ typedef struct vout_thread_s vout_chroma_t chroma; /* translation tables */ /* Picture and subpicture heaps */ - picture_t p_picture[VOUT_MAX_PICTURES]; /* pictures */ + picture_t p_picture[2*VOUT_MAX_PICTURES]; /* pictures */ subpicture_t p_subpicture[VOUT_MAX_PICTURES]; /* subpictures */ /* Bitmap fonts */ @@ -187,20 +189,22 @@ typedef struct vout_thread_s /***************************************************************************** * Prototypes *****************************************************************************/ -#ifndef PLUGIN +#ifndef __PLUGIN__ void vout_InitBank ( void ); void vout_EndBank ( void ); -vout_thread_t * vout_CreateThread ( int *pi_status, int, int, int, int ); +vout_thread_t * vout_CreateThread ( int *pi_status, int, int, u32, int ); void vout_DestroyThread ( vout_thread_t *, int *pi_status ); vout_fifo_t * vout_CreateFifo ( void ); void vout_DestroyFifo ( vout_fifo_t * ); void vout_FreeFifo ( vout_fifo_t * ); +int vout_ChromaCmp ( u32, u32 ); + picture_t * vout_CreatePicture ( vout_thread_t *, boolean_t, boolean_t, boolean_t ); -void vout_AllocatePicture( picture_t *, int, int, int ); +void vout_AllocatePicture( picture_t *, int, int, u32 ); void vout_DestroyPicture ( vout_thread_t *, picture_t * ); void vout_DisplayPicture ( vout_thread_t *, picture_t * ); void vout_DatePicture ( vout_thread_t *, picture_t *, mtime_t ); @@ -231,5 +235,6 @@ void vout_RenderSubPictures ( vout_thread_t *, picture_t *, # define vout_LinkPicture p_symbols->vout_LinkPicture # define vout_UnlinkPicture p_symbols->vout_UnlinkPicture # define vout_PlacePicture p_symbols->vout_PlacePicture +# define vout_ChromaCmp p_symbols->vout_ChromaCmp #endif