* includes all common video types and constants.
*****************************************************************************
* Copyright (C) 1999, 2000 VideoLAN
- * $Id: vlc_video.h,v 1.3 2003/10/04 15:51:22 sigmunau Exp $
+ * $Id: vlc_video.h,v 1.9 2004/01/25 18:17:08 zorglub Exp $
*
* Authors: Vincent Seguin <seguin@via.ecp.fr>
*
* 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
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.
*****************************************************************************/
+#ifndef _VLC_VIDEO_H
+#define _VLC_VIDEO_H 1
+
+#include "vlc_es.h"
/**
* Description of a planar graphic field
*/
struct picture_t
{
+ /** \name Picture format
+ * Describes the properties of the picture
+ * @{*/
+ video_frame_format_t format;
+ /**@}*/
+
/** Picture data - data can always be freely modified, but p_data may
* NEVER be modified. A direct buffer can be handled as the plugin
* wishes, it can even swap p_pixels buffers. */
unsigned int i_nb_fields; /**< # of displayed fields */
vlc_bool_t b_top_field_first; /**< which field is first */
/**@}*/
-
+
/** The picture heap we are attached to */
picture_heap_t* p_heap;
int i_width; /**< picture width */
int i_height; /**< picture height */
/**@}*/
-#if 0
- /* Additionnal properties depending of the subpicture type */
- union
- {
- /* Text subpictures properties - text is stored in data area, in ASCIIZ
- * format */
- struct
- {
- vout_font_t * p_font; /* font, NULL for default */
- int i_style; /* text style */
- uint32_t i_char_color; /* character color */
- uint32_t i_border_color; /* border color */
- uint32_t i_bg_color; /* background color */
- } text;
- } type;
-#endif
/** Pointer to function that renders this subtitle in a picture */
void ( *pf_render ) ( vout_thread_t *, picture_t *, const subpicture_t * );
#define RESERVED_SUBPICTURE 1 /* allocated and reserved */
#define READY_SUBPICTURE 2 /* ready for display */
+/*****************************************************************************
+ * Prototypes
+ *****************************************************************************/
+/**
+ * vout_AspectRatio
+ *
+ * Set the i_aspect_x and i_aspect_y from the encoded aspect ratio i_aspect.
+ * \param i_aspect the encoded aspect ratio
+ * \param i_aspect_x the decoded x-axis portion of i_aspect. This is set.
+ * \param i_aspect_y the decoded y-axis portion of i_aspect This is set.
+ */
+VLC_EXPORT( void, vout_AspectRatio, ( unsigned int i_aspect, unsigned int *i_aspect_x, unsigned int *i_aspect_y ) );
+
/**@}*/
+
+#endif /* _VLC_VIDEO_H */