git-svn-id: https://mlt.svn.sourceforge.net/svnroot/mlt/trunk/mlt@310
d19143bc-622f-0410-bfdd-
b5b2a6649095
int window_height;
float aspect_ratio;
float display_aspect;
int window_height;
float aspect_ratio;
float display_aspect;
+ double last_frame_aspect;
int width;
int height;
int playing;
int width;
int height;
int playing;
- if ( width != this->width || height != this->height )
+ if ( width != this->width || height != this->height || this->last_frame_aspect != mlt_frame_get_aspect_ratio( frame ) )
{
this->width = width;
this->height = height;
{
this->width = width;
this->height = height;
+ this->last_frame_aspect = mlt_frame_get_aspect_ratio( frame );
else
{
// Use hardware scaler to normalise display aspect ratio
else
{
// Use hardware scaler to normalise display aspect ratio
- this->rect.w = frame_aspect / this_aspect * this->window_width + 0.5;
+ this->rect.w = frame_aspect / this_aspect * this->window_width;
this->rect.h = this->window_height;
if ( this->rect.w > this->window_width )
{
this->rect.h = this->window_height;
if ( this->rect.w > this->window_width )
{
SDL_FreeYUVOverlay( this->sdl_overlay );
// open SDL window with video overlay, if possible
SDL_FreeYUVOverlay( this->sdl_overlay );
// open SDL window with video overlay, if possible
this->sdl_screen = SDL_SetVideoMode( this->window_width, this->window_height, 0, this->sdl_flags );
this->sdl_screen = SDL_SetVideoMode( this->window_width, this->window_height, 0, this->sdl_flags );
if ( this->sdl_screen != NULL )
{
if ( this->sdl_screen != NULL )
{
// Specify the SDL Version
SDL_VERSION( &wm.version );
// Specify the SDL Version
SDL_VERSION( &wm.version );
+ // Lock the display
+ sdl_lock_display();
+
// Get the wm structure
if ( SDL_GetWMInfo( &wm ) == 1 )
{
// Get the wm structure
if ( SDL_GetWMInfo( &wm ) == 1 )
{
+ // Unlock the display
+ sdl_lock_display();
+