summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
authorMathieu Duponchelle <mathieu@centricular.com>2018-07-12 21:57:57 +0200
committerMathieu Duponchelle <mathieu@centricular.com>2018-07-13 00:53:28 +0200
commit9c0dd8ef60a2562af31e63f0dedc83e71dcdf9d9 (patch)
tree4e8a674f98aa6ce185483993f143c4efa43de0a2 /ext
parentb3dc5c2799c0b9075d147b581dac8067f5a197ea (diff)
downloadgst-libav-9c0dd8ef60a2562af31e63f0dedc83e71dcdf9d9.tar.gz
avcfg: add skip support to overrides system
https://bugzilla.gnome.org/show_bug.cgi?id=792900
Diffstat (limited to 'ext')
-rw-r--r--ext/libav/gstavcfg.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/ext/libav/gstavcfg.c b/ext/libav/gstavcfg.c
index 0a5baa0..3f98da2 100644
--- a/ext/libav/gstavcfg.c
+++ b/ext/libav/gstavcfg.c
@@ -219,8 +219,14 @@ install_opts (GObjectClass * gobject_class, const AVClass ** obj, guint prop_id,
const gchar *name;
if (overrides && g_hash_table_contains (overrides, opt->name)) {
- name =
- gst_structure_get_name (g_hash_table_lookup (overrides, opt->name));
+ gboolean skip;
+ const GstStructure *s =
+ (GstStructure *) g_hash_table_lookup (overrides, opt->name);
+
+ name = gst_structure_get_name (s);
+ if (gst_structure_get_boolean (s, "skip", &skip) && skip) {
+ continue;
+ }
} else {
name = opt->name;
}