diff options
author | Måns Rullgård <mans@mansr.com> | 2006-06-09 22:43:21 +0000 |
---|---|---|
committer | Måns Rullgård <mans@mansr.com> | 2006-06-09 22:43:21 +0000 |
commit | 3ef17d626fc06d0ba38d8b3a60dc3334d07705a1 (patch) | |
tree | eebda84bbc146340db341ebf28dbe1af1fda3094 | |
parent | 87318d69880a34695e46b907a8755d16e61c5749 (diff) | |
download | ffmpeg-3ef17d626fc06d0ba38d8b3a60dc3334d07705a1.tar.gz |
don't use xlib in ffplay, and bump required sdl version
Originally committed as revision 5463 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rwxr-xr-x | configure | 2 | ||||
-rw-r--r-- | ffplay.c | 56 |
2 files changed, 16 insertions, 42 deletions
@@ -1184,7 +1184,7 @@ EOF restore_flags if test $? = 0; then _sdlversion=`"${SDL_CONFIG}" --version | sed 's/[^0-9]//g'` - if test "$_sdlversion" -lt 121 ; then + if test "$_sdlversion" -lt 130 ; then sdl_too_old=yes else sdl=yes @@ -45,14 +45,6 @@ } #endif -#if defined(__linux__) -#define HAVE_X11 -#endif - -#ifdef HAVE_X11 -#include <X11/Xlib.h> -#endif - //#define DEBUG_SYNC #define MAX_VIDEOQ_SIZE (5 * 256 * 1024) @@ -2104,25 +2096,19 @@ void toggle_full_screen(void) { int w, h, flags; is_full_screen = !is_full_screen; - if (!fs_screen_width) { - /* use default SDL method */ - SDL_WM_ToggleFullScreen(screen); + flags = SDL_HWSURFACE|SDL_ASYNCBLIT|SDL_HWACCEL; + if (is_full_screen) { + w = fs_screen_width; + h = fs_screen_height; + flags |= SDL_FULLSCREEN; } else { - /* use the recorded resolution */ - flags = SDL_HWSURFACE|SDL_ASYNCBLIT|SDL_HWACCEL; - if (is_full_screen) { - w = fs_screen_width; - h = fs_screen_height; - flags |= SDL_FULLSCREEN; - } else { - w = screen_width; - h = screen_height; - flags |= SDL_RESIZABLE; - } - screen = SDL_SetVideoMode(w, h, 0, flags); - cur_stream->width = w; - cur_stream->height = h; + w = screen_width; + h = screen_height; + flags |= SDL_RESIZABLE; } + screen = SDL_SetVideoMode(w, h, 0, flags); + cur_stream->width = w; + cur_stream->height = h; } void toggle_pause(void) @@ -2346,10 +2332,7 @@ const OptionDef options[] = { { "h", 0, {(void*)show_help}, "show help" }, { "x", HAS_ARG, {(void*)opt_width}, "force displayed width", "width" }, { "y", HAS_ARG, {(void*)opt_height}, "force displayed height", "height" }, -#if 0 - /* disabled as SDL/X11 does not support it correctly on application launch */ { "fs", OPT_BOOL, {(void*)&is_full_screen}, "force full screen" }, -#endif { "an", OPT_BOOL, {(void*)&audio_disable}, "disable audio" }, { "vn", OPT_BOOL, {(void*)&video_disable}, "disable video" }, { "ss", HAS_ARG, {(void*)&opt_seek}, "seek to a given position in seconds", "pos" }, @@ -2443,19 +2426,10 @@ int main(int argc, char **argv) } if (!display_disable) { -#ifdef HAVE_X11 - /* save the screen resolution... SDL should allow full screen - by resizing the window */ - { - Display *dpy; - dpy = XOpenDisplay(NULL); - if (dpy) { - fs_screen_width = DisplayWidth(dpy, DefaultScreen(dpy)); - fs_screen_height = DisplayHeight(dpy, DefaultScreen(dpy)); - XCloseDisplay(dpy); - } - } -#endif + const SDL_VideoInfo *vi = SDL_GetVideoInfo(); + fs_screen_width = vi->current_w; + fs_screen_height = vi->current_h; + flags = SDL_HWSURFACE|SDL_ASYNCBLIT|SDL_HWACCEL; if (is_full_screen && fs_screen_width) { w = fs_screen_width; |