mirror of
https://github.com/nyanmisaka/ffmpeg-rockchip.git
synced 2025-10-07 01:36:16 +08:00
sdl: use AV_OPT_TYPE_IMAGE_SIZE.
This commit is contained in:
@@ -36,7 +36,6 @@ typedef struct {
|
|||||||
SDL_Overlay *overlay;
|
SDL_Overlay *overlay;
|
||||||
char *window_title;
|
char *window_title;
|
||||||
char *icon_title;
|
char *icon_title;
|
||||||
char *window_size;
|
|
||||||
int window_width, window_height;
|
int window_width, window_height;
|
||||||
int overlay_width, overlay_height;
|
int overlay_width, overlay_height;
|
||||||
int overlay_fmt;
|
int overlay_fmt;
|
||||||
@@ -58,7 +57,6 @@ static int sdl_write_trailer(AVFormatContext *s)
|
|||||||
|
|
||||||
av_freep(&sdl->window_title);
|
av_freep(&sdl->window_title);
|
||||||
av_freep(&sdl->icon_title);
|
av_freep(&sdl->icon_title);
|
||||||
av_freep(&sdl->window_size);
|
|
||||||
|
|
||||||
if (sdl->overlay) {
|
if (sdl->overlay) {
|
||||||
SDL_FreeYUVOverlay(sdl->overlay);
|
SDL_FreeYUVOverlay(sdl->overlay);
|
||||||
@@ -120,15 +118,6 @@ static int sdl_write_header(AVFormatContext *s)
|
|||||||
goto fail;
|
goto fail;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (sdl->window_size) {
|
|
||||||
if (av_parse_video_size(&sdl->window_width, &sdl->window_height,
|
|
||||||
sdl->window_size) < 0) {
|
|
||||||
av_log(s, AV_LOG_ERROR, "Invalid window size '%s'\n", sdl->window_size);
|
|
||||||
ret = AVERROR(EINVAL);
|
|
||||||
goto fail;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* compute overlay width and height from the codec context information */
|
/* compute overlay width and height from the codec context information */
|
||||||
sar = st->sample_aspect_ratio.num ? av_q2d(st->sample_aspect_ratio) : 1;
|
sar = st->sample_aspect_ratio.num ? av_q2d(st->sample_aspect_ratio) : 1;
|
||||||
dar = sar * (float)encctx->width / (float)encctx->height;
|
dar = sar * (float)encctx->width / (float)encctx->height;
|
||||||
@@ -205,7 +194,7 @@ static int sdl_write_packet(AVFormatContext *s, AVPacket *pkt)
|
|||||||
static const AVOption options[] = {
|
static const AVOption options[] = {
|
||||||
{ "window_title", "SDL window title", OFFSET(window_title), AV_OPT_TYPE_STRING, {.str = NULL }, 0, 0, AV_OPT_FLAG_ENCODING_PARAM },
|
{ "window_title", "SDL window title", OFFSET(window_title), AV_OPT_TYPE_STRING, {.str = NULL }, 0, 0, AV_OPT_FLAG_ENCODING_PARAM },
|
||||||
{ "icon_title", "SDL iconified window title", OFFSET(icon_title) , AV_OPT_TYPE_STRING, {.str = NULL }, 0, 0, AV_OPT_FLAG_ENCODING_PARAM },
|
{ "icon_title", "SDL iconified window title", OFFSET(icon_title) , AV_OPT_TYPE_STRING, {.str = NULL }, 0, 0, AV_OPT_FLAG_ENCODING_PARAM },
|
||||||
{ "window_size", "SDL window forced size", OFFSET(window_size) , AV_OPT_TYPE_STRING, {.str = NULL }, 0, 0, AV_OPT_FLAG_ENCODING_PARAM },
|
{ "window_size", "SDL window forced size", OFFSET(window_width), AV_OPT_TYPE_IMAGE_SIZE,{.str=NULL}, 0, 0, AV_OPT_FLAG_ENCODING_PARAM },
|
||||||
{ NULL },
|
{ NULL },
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user