summaryrefslogtreecommitdiffstats
path: root/libavdevice
diff options
context:
space:
mode:
authordronus <paul.geisler@web.de>2013-03-10 16:29:04 +0100
committerMichael Niedermayer <michaelni@gmx.at>2013-03-18 20:44:21 +0100
commitfdca977a22d3441cb807e71ddd4e5c335615e3fb (patch)
tree79156eae31e440467797d72e83bf85421b3735e1 /libavdevice
parent58bc65952bc76c92e6d929d6dd59852d29d18caa (diff)
downloadffmpeg-streaming-fdca977a22d3441cb807e71ddd4e5c335615e3fb.zip
ffmpeg-streaming-fdca977a22d3441cb807e71ddd4e5c335615e3fb.tar.gz
libavdevice sdl: added window_fullscreen option to switch SDL output into fullscreen mode
Diffstat (limited to 'libavdevice')
-rw-r--r--libavdevice/sdl.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/libavdevice/sdl.c b/libavdevice/sdl.c
index 1867139..e708dfd 100644
--- a/libavdevice/sdl.c
+++ b/libavdevice/sdl.c
@@ -37,6 +37,7 @@ typedef struct {
char *window_title;
char *icon_title;
int window_width, window_height; /**< size of the window */
+ int window_fullscreen;
int overlay_width, overlay_height; /**< size of the video in the window */
int overlay_x, overlay_y;
int overlay_fmt;
@@ -76,6 +77,7 @@ static int sdl_write_header(AVFormatContext *s)
AVCodecContext *encctx = st->codec;
AVRational sar, dar; /* sample and display aspect ratios */
int i, ret;
+ int flags = SDL_SWSURFACE | sdl->window_fullscreen ? SDL_FULLSCREEN : 0;
if (!sdl->window_title)
sdl->window_title = av_strdup(s->filename);
@@ -151,7 +153,7 @@ static int sdl_write_header(AVFormatContext *s)
SDL_WM_SetCaption(sdl->window_title, sdl->icon_title);
sdl->surface = SDL_SetVideoMode(sdl->window_width, sdl->window_height,
- 24, SDL_SWSURFACE);
+ 24, flags);
if (!sdl->surface) {
av_log(s, AV_LOG_ERROR, "Unable to set video mode: %s\n", SDL_GetError());
ret = AVERROR(EINVAL);
@@ -209,6 +211,7 @@ static const AVOption options[] = {
{ "window_title", "set SDL window title", OFFSET(window_title), AV_OPT_TYPE_STRING, {.str = NULL }, 0, 0, AV_OPT_FLAG_ENCODING_PARAM },
{ "icon_title", "set SDL iconified window title", OFFSET(icon_title) , AV_OPT_TYPE_STRING, {.str = NULL }, 0, 0, AV_OPT_FLAG_ENCODING_PARAM },
{ "window_size", "set SDL window forced size", OFFSET(window_width), AV_OPT_TYPE_IMAGE_SIZE,{.str=NULL}, 0, 0, AV_OPT_FLAG_ENCODING_PARAM },
+ { "window_fullscreen", "set SDL window fullscreen", OFFSET(window_fullscreen), AV_OPT_TYPE_INT,{.i64=0}, INT_MIN, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM },
{ NULL },
};
OpenPOWER on IntegriCloud