[FFmpeg-devel] ffplay -fs fix (ticket #3964)
Jeff Dwork
jeff at reggie.com
Sat Sep 20 05:54:15 CEST 2014
On MS Windows, 'ffplay.exe -fs' does not start fullscreen. Behavior
on linux is correct.
On Windows, the initial placement of the SDL screen triggers the
SDL_VIDEORESIZE event. This executes the code in the event_loop which
calls SDL_SetVideoMode with the SDL_RESIZEABLE bit set. On linux the
resize event does not occur.
I can see an obvious flicker on my laptop as the initial fullscreen
window is replaced by the normal window. I don't see it on my faster
desktop system.
The fix is simple - don't execute SDL_SetVideoMode in the event_loop
if is_full_screen is set.
Diff for ffplay version N-66289-gb76d613
diff original/ffplay.c fixed/ffplay.c
3469,3470c3469,3471
< screen = SDL_SetVideoMode(FFMIN(16383,
event.resize.w), event.resize.h, 0,
<
SDL_HWSURFACE|SDL_RESIZABLE|SDL_ASYNCBLIT|SDL_HWACCEL);
---
> if (!is_full_screen)
> screen = SDL_SetVideoMode(FFMIN(16383,
event.resize.w), event.resize.h, 0,
>
SDL_HWSURFACE|SDL_RESIZABLE|SDL_ASYNCBLIT|SDL_HWACCEL);
More information about the ffmpeg-devel
mailing list