summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
authorEdward Hervey <edward@centricular.com>2018-09-21 11:30:58 +0200
committerEdward Hervey <bilboed@bilboed.com>2018-09-21 11:30:58 +0200
commit143aa80cdf3f4286fc5347ffda849827191965f8 (patch)
tree73dbda1bbfcaa5cc7ed94a9dcc23fc78a6974752 /ext
parent5e4f6cadb06deec16e30de14f66f1ba5e9dc7e99 (diff)
downloadgst-libav-143aa80cdf3f4286fc5347ffda849827191965f8.tar.gz
avcfg: Simplify code
The existence of 'opt' is checked, the remainder of the code can therefore rely on it being valid. CID #1439537
Diffstat (limited to 'ext')
-rw-r--r--ext/libav/gstavcfg.c145
1 files changed, 70 insertions, 75 deletions
diff --git a/ext/libav/gstavcfg.c b/ext/libav/gstavcfg.c
index 6018dfe..8df5d14 100644
--- a/ext/libav/gstavcfg.c
+++ b/ext/libav/gstavcfg.c
@@ -461,96 +461,91 @@ gst_ffmpeg_cfg_get_property (AVCodecContext * refcontext, GValue * value,
GParamSpec * pspec)
{
const AVOption *opt;
+ int res = -1;
opt = g_param_spec_get_qdata (pspec, avoption_quark);
- if (!opt) {
+ if (!opt)
return FALSE;
- }
-
- if (opt) {
- int res = -1;
- switch (G_PARAM_SPEC_VALUE_TYPE (pspec)) {
- case G_TYPE_INT:
- {
- int64_t val;
- if ((res = av_opt_get_int (refcontext, opt->name,
- AV_OPT_SEARCH_CHILDREN, &val) >= 0))
- g_value_set_int (value, val);
- break;
- }
- case G_TYPE_INT64:
- {
- int64_t val;
- if ((res = av_opt_get_int (refcontext, opt->name,
- AV_OPT_SEARCH_CHILDREN, &val) >= 0))
- g_value_set_int64 (value, val);
- break;
+ switch (G_PARAM_SPEC_VALUE_TYPE (pspec)) {
+ case G_TYPE_INT:
+ {
+ int64_t val;
+ if ((res = av_opt_get_int (refcontext, opt->name,
+ AV_OPT_SEARCH_CHILDREN, &val) >= 0))
+ g_value_set_int (value, val);
+ break;
+ }
+ case G_TYPE_INT64:
+ {
+ int64_t val;
+ if ((res = av_opt_get_int (refcontext, opt->name,
+ AV_OPT_SEARCH_CHILDREN, &val) >= 0))
+ g_value_set_int64 (value, val);
+ break;
+ }
+ case G_TYPE_UINT64:
+ {
+ int64_t val;
+ if ((res = av_opt_get_int (refcontext, opt->name,
+ AV_OPT_SEARCH_CHILDREN, &val) >= 0))
+ g_value_set_uint64 (value, val);
+ break;
+ }
+ case G_TYPE_DOUBLE:
+ {
+ gdouble val;
+ if ((res = av_opt_get_double (refcontext, opt->name,
+ AV_OPT_SEARCH_CHILDREN, &val) >= 0))
+ g_value_set_double (value, val);
+ break;
+ }
+ case G_TYPE_FLOAT:
+ {
+ gdouble val;
+ if ((res = av_opt_get_double (refcontext, opt->name,
+ AV_OPT_SEARCH_CHILDREN, &val) >= 0))
+ g_value_set_float (value, (gfloat) val);
+ break;
+ }
+ case G_TYPE_STRING:
+ {
+ uint8_t *val;
+ if ((res = av_opt_get (refcontext, opt->name,
+ AV_OPT_SEARCH_CHILDREN | AV_OPT_ALLOW_NULL, &val) >= 0)) {
+ g_value_set_string (value, (gchar *) val);
}
- case G_TYPE_UINT64:
- {
+ break;
+ }
+ case G_TYPE_BOOLEAN:
+ {
+ int64_t val;
+ if ((res = av_opt_get_int (refcontext, opt->name,
+ AV_OPT_SEARCH_CHILDREN, &val) >= 0))
+ g_value_set_boolean (value, val ? TRUE : FALSE);
+ break;
+ }
+ default:
+ if (G_IS_PARAM_SPEC_ENUM (pspec)) {
int64_t val;
+
if ((res = av_opt_get_int (refcontext, opt->name,
AV_OPT_SEARCH_CHILDREN, &val) >= 0))
- g_value_set_uint64 (value, val);
- break;
- }
- case G_TYPE_DOUBLE:
- {
- gdouble val;
- if ((res = av_opt_get_double (refcontext, opt->name,
- AV_OPT_SEARCH_CHILDREN, &val) >= 0))
- g_value_set_double (value, val);
- break;
- }
- case G_TYPE_FLOAT:
- {
- gdouble val;
- if ((res = av_opt_get_double (refcontext, opt->name,
- AV_OPT_SEARCH_CHILDREN, &val) >= 0))
- g_value_set_float (value, (gfloat) val);
- break;
- }
- case G_TYPE_STRING:
- {
- uint8_t *val;
- if ((res = av_opt_get (refcontext, opt->name,
- AV_OPT_SEARCH_CHILDREN | AV_OPT_ALLOW_NULL, &val) >= 0)) {
- g_value_set_string (value, (gchar *) val);
- }
- break;
- }
- case G_TYPE_BOOLEAN:
- {
+ g_value_set_enum (value, val);
+ } else if (G_IS_PARAM_SPEC_FLAGS (pspec)) {
int64_t val;
+
if ((res = av_opt_get_int (refcontext, opt->name,
AV_OPT_SEARCH_CHILDREN, &val) >= 0))
- g_value_set_boolean (value, val ? TRUE : FALSE);
- break;
+ g_value_set_flags (value, val);
+ } else { /* oops, bit lazy we don't cover this case yet */
+ g_critical ("%s does not yet support type %s", GST_FUNCTION,
+ g_type_name (G_PARAM_SPEC_VALUE_TYPE (pspec)));
}
- default:
- if (G_IS_PARAM_SPEC_ENUM (pspec)) {
- int64_t val;
-
- if ((res = av_opt_get_int (refcontext, opt->name,
- AV_OPT_SEARCH_CHILDREN, &val) >= 0))
- g_value_set_enum (value, val);
- } else if (G_IS_PARAM_SPEC_FLAGS (pspec)) {
- int64_t val;
-
- if ((res = av_opt_get_int (refcontext, opt->name,
- AV_OPT_SEARCH_CHILDREN, &val) >= 0))
- g_value_set_flags (value, val);
- } else { /* oops, bit lazy we don't cover this case yet */
- g_critical ("%s does not yet support type %s", GST_FUNCTION,
- g_type_name (G_PARAM_SPEC_VALUE_TYPE (pspec)));
- }
- }
- return res >= 0;
}
- return TRUE;
+ return res >= 0;
}
void