|
@@ -3008,6 +3008,8 @@ static int opt_old2new(void *optctx, const char *opt, const char *arg) |
|
|
{ |
|
|
{ |
|
|
OptionsContext *o = optctx; |
|
|
OptionsContext *o = optctx; |
|
|
char *s = av_asprintf("%s:%c", opt + 1, *opt); |
|
|
char *s = av_asprintf("%s:%c", opt + 1, *opt); |
|
|
|
|
|
if (!s) |
|
|
|
|
|
return AVERROR(ENOMEM); |
|
|
int ret = parse_option(o, s, arg, options); |
|
|
int ret = parse_option(o, s, arg, options); |
|
|
av_free(s); |
|
|
av_free(s); |
|
|
return ret; |
|
|
return ret; |
|
@@ -3039,6 +3041,8 @@ static int opt_qscale(void *optctx, const char *opt, const char *arg) |
|
|
return parse_option(o, "q:v", arg, options); |
|
|
return parse_option(o, "q:v", arg, options); |
|
|
} |
|
|
} |
|
|
s = av_asprintf("q%s", opt + 6); |
|
|
s = av_asprintf("q%s", opt + 6); |
|
|
|
|
|
if (!s) |
|
|
|
|
|
return AVERROR(ENOMEM); |
|
|
ret = parse_option(o, s, arg, options); |
|
|
ret = parse_option(o, s, arg, options); |
|
|
av_free(s); |
|
|
av_free(s); |
|
|
return ret; |
|
|
return ret; |
|
@@ -3084,6 +3088,8 @@ static int opt_timecode(void *optctx, const char *opt, const char *arg) |
|
|
{ |
|
|
{ |
|
|
OptionsContext *o = optctx; |
|
|
OptionsContext *o = optctx; |
|
|
char *tcr = av_asprintf("timecode=%s", arg); |
|
|
char *tcr = av_asprintf("timecode=%s", arg); |
|
|
|
|
|
if (!tcr) |
|
|
|
|
|
return AVERROR(ENOMEM); |
|
|
int ret = parse_option(o, "metadata:g", tcr, options); |
|
|
int ret = parse_option(o, "metadata:g", tcr, options); |
|
|
if (ret >= 0) |
|
|
if (ret >= 0) |
|
|
ret = av_dict_set(&o->g->codec_opts, "gop_timecode", arg, 0); |
|
|
ret = av_dict_set(&o->g->codec_opts, "gop_timecode", arg, 0); |
|
|