/*****************************************************************************
* Preamble
*****************************************************************************/
-#include <stdlib.h> /* malloc(), free() */
-#include <string.h>
#include <vlc/vlc.h>
#include <vlc_vout.h>
int i_index, i_row, i_col, i_width, i_height, i_left, i_top;
unsigned int i_target_width,i_target_height;
picture_t *p_pic;
- video_format_t fmt = {0};
+ video_format_t fmt;
int i_aspect = 4*VOUT_ASPECT_FACTOR/3;
int i_align = 0;
unsigned int i_hstart, i_hend, i_vstart, i_vend;
int i_vstart_rounded = 0, i_hstart_rounded = 0;
char *psz_aspect;
+ memset( &fmt, 0, sizeof(video_format_t) );
+
psz_aspect = var_CreateGetNonEmptyString( p_vout,
CFG_PREFIX "element-aspect" );
if( psz_aspect && *psz_aspect )
w1 &= ~1;
h1 = w1 * VOUT_ASPECT_FACTOR / i_aspect&~1;
h1 &= ~1;
-
+
h2 = p_vout->output.i_height / p_vout->p_sys->i_row&~1;
h2 &= ~1;
w2 = h2 * i_aspect / VOUT_ASPECT_FACTOR&~1;
w2 &= ~1;
-
+
if ( h1 * p_vout->p_sys->i_row < p_vout->output.i_height )
{
unsigned int i_tmp;
- i_target_width = w2;
+ i_target_width = w2;
i_target_height = h2;
i_vstart = 0;
i_vend = p_vout->output.i_height;
p_vout->p_sys->i_vout = 0;
msg_Dbg( p_vout, "target window (%d,%d)-(%d,%d)", i_hstart,i_vstart,i_hend,i_vend );
-
+
i_top = 0;
i_height = 0;
else if( ( i_col + 1 ) * i_target_width < i_hstart ||
( i_col * i_target_width ) > i_hend )
{
- i_width = 0;
+ i_width = 0;
}
else
{
i_align |= VOUT_ALIGN_RIGHT;
}
}
-
+
if( i_row * i_target_height >= i_vstart &&
( i_row + 1 ) * i_target_height <= i_vend )
{