gst-plugins-bad: Update Windows plugins cache
authorSeungha Yang <seungha@centricular.com>
Fri, 21 Oct 2022 19:28:03 +0000 (04:28 +0900)
committerGStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org>
Mon, 24 Oct 2022 12:42:52 +0000 (12:42 +0000)
Add/update d3d11, qsv, nvcodec, wic, directshow, and amfcodec plugins cache

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3250>

subprojects/gst-plugins-bad/docs/plugins/gst_plugins_cache.json

index be3e06f..4489291 100644 (file)
                     "GstPreset"
                 ],
                 "klass": "Codec/Encoder/Video/Hardware",
-                "long-name": "AMD AMF H.264 Video Encoder",
                 "pad-templates": {
                     "sink": {
-                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: NV12\n          width: [ 128, 4096 ]\n         height: [ 128, 4096 ]\n interlace-mode: progressive\nvideo/x-raw:\n         format: NV12\n          width: [ 128, 4096 ]\n         height: [ 128, 4096 ]\n interlace-mode: progressive\n",
+                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: NV12\n          width: [ 128, 4096 ]\n         height: [ 128, 4096 ]\nvideo/x-raw:\n         format: NV12\n          width: [ 128, 4096 ]\n         height: [ 128, 4096 ]\n",
                         "direction": "sink",
                         "presence": "always"
                     },
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "58766",
+                        "default": "0",
                         "max": "9223372036854775807",
                         "min": "-9223372036854775808",
-                        "mutable": "playing",
+                        "mutable": "null",
                         "readable": true,
                         "type": "gint64",
-                        "writable": true
+                        "writable": false
                     },
                     "aud": {
                         "blurb": "Use AU (Access Unit) delimiter",
                     "GstPreset"
                 ],
                 "klass": "Codec/Encoder/Video/Hardware",
-                "long-name": "AMD AMF H.265 Video Encoder",
                 "pad-templates": {
                     "sink": {
-                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: NV12\n          width: [ 128, 4096 ]\n         height: [ 128, 4096 ]\n interlace-mode: progressive\nvideo/x-raw:\n         format: NV12\n          width: [ 128, 4096 ]\n         height: [ 128, 4096 ]\n interlace-mode: progressive\n",
+                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: NV12\n          width: [ 128, 4096 ]\n         height: [ 128, 4096 ]\nvideo/x-raw:\n         format: NV12\n          width: [ 128, 4096 ]\n         height: [ 128, 4096 ]\n",
                         "direction": "sink",
                         "presence": "always"
                     },
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "58766",
+                        "default": "0",
                         "max": "9223372036854775807",
                         "min": "-9223372036854775808",
-                        "mutable": "playing",
+                        "mutable": "null",
                         "readable": true,
                         "type": "gint64",
-                        "writable": true
+                        "writable": false
                     },
                     "aud": {
                         "blurb": "Use AU (Access Unit) delimiter",
                     "GObject"
                 ],
                 "klass": "Codec/Decoder/Video/Hardware",
-                "long-name": "Direct3D11/DXVA AV1 NVIDIA GeForce RTX 3060 Laptop GPU Decoder",
                 "pad-templates": {
                     "sink": {
-                        "caps": "video/x-av1:\n      alignment: frame\n        profile: 0\n          width: [ 1, 8192 ]\n         height: [ 1, 8192 ]\n",
+                        "caps": "video/x-av1:\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      alignment: frame\n        profile: main\n",
                         "direction": "sink",
                         "presence": "always"
                     },
                     "src": {
-                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { NV12, P010_10LE }\n          width: [ 1, 8192 ]\n         height: [ 1, 8192 ]\nvideo/x-raw:\n         format: { NV12, P010_10LE }\n          width: [ 1, 8192 ]\n         height: [ 1, 8192 ]\n",
+                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { NV12, P010_10LE }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\nvideo/x-raw:\n         format: { NV12, P010_10LE }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n",
                         "direction": "src",
                         "presence": "always"
                     }
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "59071",
+                        "default": "0",
                         "max": "9223372036854775807",
                         "min": "-9223372036854775808",
                         "mutable": "null",
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "9504",
+                        "default": "0",
                         "max": "-1",
                         "min": "0",
                         "mutable": "null",
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "4318",
+                        "default": "0",
                         "max": "-1",
                         "min": "0",
                         "mutable": "null",
                         "writable": false
                     }
                 },
-                "rank": "secondary"
+                "rank": "primary"
             },
             "d3d11colorconvert": {
                 "author": "Seungha Yang <seungha@centricular.com>",
                     "GObject"
                 ],
                 "klass": "Filter/Converter/Video/Hardware",
-                "long-name": "Direct3D11 colorspace converter",
                 "pad-templates": {
                     "sink": {
-                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
                         "direction": "sink",
                         "presence": "always"
                     },
                     "src": {
-                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
                         "direction": "src",
                         "presence": "always"
                     }
                 },
-                "rank": "none"
-            },
-            "d3d11compositor": {
-                "author": "Seungha Yang <seungha@centricular.com>",
-                "description": "A Direct3D11 compositor bin",
-                "hierarchy": [
-                    "GstD3D11CompositorBin",
-                    "GstBin",
-                    "GstElement",
-                    "GstObject",
-                    "GInitiallyUnowned",
-                    "GObject"
-                ],
-                "interfaces": [
-                    "GstChildProxy"
-                ],
-                "klass": "Filter/Editor/Video/Compositor",
-                "long-name": "Direct3D11 Compositor Bin",
-                "pad-templates": {
-                    "sink_%%u": {
-                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\nvideo/x-raw:\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
-                        "direction": "sink",
-                        "presence": "request",
-                        "type": "GstD3D11CompositorBinInput"
-                    },
-                    "src": {
-                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\nvideo/x-raw:\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
-                        "direction": "src",
-                        "presence": "always",
-                        "type": "GstD3D11CompositorBinPad"
-                    }
-                },
                 "properties": {
-                    "adapter": {
-                        "blurb": "Adapter index for creating device (-1 for default)",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": false,
-                        "default": "0",
-                        "max": "2147483647",
-                        "min": "-1",
-                        "mutable": "ready",
-                        "readable": true,
-                        "type": "gint",
-                        "writable": true
-                    },
-                    "background": {
-                        "blurb": "Background type",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": false,
-                        "default": "checker (0)",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "GstD3D11CompositorBackground",
-                        "writable": true
-                    },
-                    "emit-signals": {
-                        "blurb": "Send signals",
+                    "gamma-mode": {
+                        "blurb": "Gamma conversion mode",
                         "conditionally-available": false,
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "false",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "gboolean",
-                        "writable": true
-                    },
-                    "latency": {
-                        "blurb": "Additional latency in live mode to allow upstream to take longer to produce buffers for the current position (in nanoseconds)",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": false,
-                        "default": "0",
-                        "max": "18446744073709551615",
-                        "min": "0",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "guint64",
-                        "writable": true
-                    },
-                    "min-upstream-latency": {
-                        "blurb": "When sources with a higher latency are expected to be plugged in dynamically after the aggregator has started playing, this allows overriding the minimum latency reported by the initial source(s). This is only taken into account when larger than the actually reported minimum latency. (nanoseconds)",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": false,
-                        "default": "0",
-                        "max": "18446744073709551615",
-                        "min": "0",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "guint64",
-                        "writable": true
-                    },
-                    "mixer": {
-                        "blurb": "The d3d11 mixer chain to use",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": false,
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "GstElement",
-                        "writable": false
-                    },
-                    "start-time": {
-                        "blurb": "Start time to use if start-time-selection=set",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": false,
-                        "default": "18446744073709551615",
-                        "max": "18446744073709551615",
-                        "min": "0",
-                        "mutable": "null",
+                        "default": "none (0)",
+                        "mutable": "playing",
                         "readable": true,
-                        "type": "guint64",
+                        "type": "GstVideoGammaMode",
                         "writable": true
                     },
-                    "start-time-selection": {
-                        "blurb": "Decides which start time is output",
+                    "primaries-mode": {
+                        "blurb": "Primaries conversion mode",
                         "conditionally-available": false,
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "zero (0)",
-                        "mutable": "null",
+                        "default": "none (0)",
+                        "mutable": "playing",
                         "readable": true,
-                        "type": "GstAggregatorStartTimeSelection",
+                        "type": "GstVideoPrimariesMode",
                         "writable": true
                     }
                 },
-                "rank": "secondary"
+                "rank": "none"
             },
-            "d3d11compositorelement": {
+            "d3d11compositor": {
                 "author": "Seungha Yang <seungha@centricular.com>",
                 "description": "A Direct3D11 compositor",
                 "hierarchy": [
                     "GstChildProxy"
                 ],
                 "klass": "Filter/Editor/Video/Compositor",
-                "long-name": "Direct3D11 Compositor",
                 "pad-templates": {
                     "sink_%%u": {
-                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { RGBA, BGRA }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\nvideo/x-raw:\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
                         "direction": "sink",
                         "presence": "request",
                         "type": "GstD3D11CompositorPad"
                     },
                     "src": {
-                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { RGBA, BGRA }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, Y42B, Y444, Y444_16LE, GRAY8, GRAY16_LE }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\nvideo/x-raw:\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, Y42B, Y444, Y444_16LE, GRAY8, GRAY16_LE }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
                         "direction": "src",
                         "presence": "always",
                         "type": "GstAggregatorPad"
                         "writable": true
                     }
                 },
-                "rank": "none"
+                "rank": "secondary"
             },
             "d3d11convert": {
                 "author": "Seungha Yang <seungha.yang@navercorp.com>, Jeongki Kim <jeongki.kim@jeongki.kim>",
                     "GInitiallyUnowned",
                     "GObject"
                 ],
-                "klass": "Filter/Converter/Scaler/Video/Hardware",
-                "long-name": "Direct3D11 colorspace converter and scaler",
+                "interfaces": [
+                    "GstVideoDirection"
+                ],
+                "klass": "Filter/Converter/Scaler/Effect/Video/Hardware",
                 "pad-templates": {
                     "sink": {
-                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
                         "direction": "sink",
                         "presence": "always"
                     },
                     "src": {
-                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
                         "direction": "src",
                         "presence": "always"
                     }
                         "readable": true,
                         "type": "gboolean",
                         "writable": true
+                    },
+                    "border-color": {
+                        "blurb": "Border color to use in ARGB64 format",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "18446462598732840960",
+                        "max": "18446744073709551615",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint64",
+                        "writable": true
+                    },
+                    "gamma-mode": {
+                        "blurb": "Gamma conversion mode",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "none (0)",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "GstVideoGammaMode",
+                        "writable": true
+                    },
+                    "primaries-mode": {
+                        "blurb": "Primaries conversion mode",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "none (0)",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "GstVideoPrimariesMode",
+                        "writable": true
                     }
                 },
                 "rank": "none"
                     "GstChildProxy"
                 ],
                 "klass": "Filter/Effect/Video/Deinterlace/Hardware",
-                "long-name": "Direct3D11 Intel(R) Iris(R) Plus Graphics Deinterlacer Bin",
                 "pad-templates": {
                     "sink": {
-                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 64, 8192 ]\n         height: [ 64, 8192 ]\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 64, 8192 ]\n         height: [ 64, 8192 ]\nvideo/x-raw:\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 64, 8192 ]\n         height: [ 64, 8192 ]\n\nvideo/x-raw(memory:SystemMemory, meta:GstVideoOverlayComposition):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 64, 8192 ]\n         height: [ 64, 8192 ]\n",
+                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\nvideo/x-raw:\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n\nvideo/x-raw(memory:SystemMemory, meta:GstVideoOverlayComposition):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n",
                         "direction": "sink",
                         "presence": "always"
                     },
                     "src": {
-                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE }\n          width: [ 64, 8192 ]\n         height: [ 64, 8192 ]\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE }\n          width: [ 64, 8192 ]\n         height: [ 64, 8192 ]\nvideo/x-raw:\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE }\n          width: [ 64, 8192 ]\n         height: [ 64, 8192 ]\n\nvideo/x-raw(memory:SystemMemory, meta:GstVideoOverlayComposition):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE }\n          width: [ 64, 8192 ]\n         height: [ 64, 8192 ]\n",
+                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\nvideo/x-raw:\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n\nvideo/x-raw(memory:SystemMemory, meta:GstVideoOverlayComposition):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n",
                         "direction": "src",
                         "presence": "always"
                     }
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "35410",
+                        "default": "0",
                         "max": "-1",
                         "min": "0",
                         "mutable": "null",
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "bob",
+                        "default": "mocomp+adaptive+bob+blend",
                         "mutable": "ready",
                         "readable": true,
                         "type": "GstD3D11DeinterlaceMethod",
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "32902",
+                        "default": "0",
                         "max": "-1",
                         "min": "0",
                         "mutable": "null",
                     "GObject"
                 ],
                 "klass": "Filter/Effect/Video/Deinterlace/Hardware",
-                "long-name": "Direct3D11 Intel(R) Iris(R) Plus Graphics Deinterlacer",
                 "pad-templates": {
                     "sink": {
-                        "caps": "video/x-raw(memory:D3D11Memory):\n          width: [ 64, 8192 ]\n         height: [ 64, 8192 ]\n         format: { NV12 }\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n          width: [ 64, 8192 ]\n         height: [ 64, 8192 ]\n         format: { NV12 }\n",
+                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { NV12, P010_10LE }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n         format: { NV12, P010_10LE }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n",
                         "direction": "sink",
                         "presence": "always"
                     },
                     "src": {
-                        "caps": "video/x-raw(memory:D3D11Memory):\n          width: [ 64, 8192 ]\n         height: [ 64, 8192 ]\n         format: { NV12 }\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n          width: [ 64, 8192 ]\n         height: [ 64, 8192 ]\n         format: { NV12 }\n",
+                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { NV12, P010_10LE }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n         format: { NV12, P010_10LE }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n",
                         "direction": "src",
                         "presence": "always"
                     }
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "35410",
+                        "default": "0",
                         "max": "-1",
                         "min": "0",
                         "mutable": "null",
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "bob",
+                        "default": "mocomp+adaptive+bob+blend",
                         "mutable": "ready",
                         "readable": true,
                         "type": "GstD3D11DeinterlaceMethod",
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "32902",
+                        "default": "0",
                         "max": "-1",
                         "min": "0",
                         "mutable": "null",
                     "GObject"
                 ],
                 "klass": "Filter/Video",
-                "long-name": "Direct3D11 downloader",
                 "pad-templates": {
                     "sink": {
-                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\nvideo/x-raw:\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:SystemMemory, meta:GstVideoOverlayComposition):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\nvideo/x-raw:\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:SystemMemory, meta:GstVideoOverlayComposition):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
                         "direction": "sink",
                         "presence": "always"
                     },
                     "src": {
-                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\nvideo/x-raw:\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:SystemMemory, meta:GstVideoOverlayComposition):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\nvideo/x-raw:\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:SystemMemory, meta:GstVideoOverlayComposition):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
                         "direction": "src",
                         "presence": "always"
                     }
                     "GObject"
                 ],
                 "klass": "Codec/Decoder/Video/Hardware",
-                "long-name": "Direct3D11/DXVA H.264 Intel(R) Iris(R) Plus Graphics Decoder",
                 "pad-templates": {
                     "sink": {
-                        "caps": "video/x-h264:\n  stream-format: { (string)avc, (string)avc3, (string)byte-stream }\n      alignment: au\n        profile: { (string)high, (string)progressive-high, (string)constrained-high, (string)main, (string)constrained-baseline, (string)baseline }\n          width: [ 1, 4096 ]\n         height: [ 1, 4096 ]\n",
+                        "caps": "video/x-h264:\n          width: [ 1, 4096 ]\n         height: [ 1, 4096 ]\n  stream-format: { (string)avc, (string)avc3, (string)byte-stream }\n      alignment: au\n        profile: { (string)high, (string)progressive-high, (string)constrained-high, (string)main, (string)constrained-baseline, (string)baseline }\n",
                         "direction": "sink",
                         "presence": "always"
                     },
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "86670",
+                        "default": "0",
                         "max": "9223372036854775807",
                         "min": "-9223372036854775808",
                         "mutable": "null",
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "35410",
+                        "default": "0",
                         "max": "-1",
                         "min": "0",
                         "mutable": "null",
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "32902",
+                        "default": "0",
                         "max": "-1",
                         "min": "0",
                         "mutable": "null",
                         "writable": false
                     }
                 },
-                "rank": "secondary"
+                "rank": "primary + 1"
             },
             "d3d11h265dec": {
                 "author": "Seungha Yang <seungha.yang@navercorp.com>",
                     "GObject"
                 ],
                 "klass": "Codec/Decoder/Video/Hardware",
-                "long-name": "Direct3D11/DXVA H.265 Intel(R) Iris(R) Plus Graphics Decoder",
                 "pad-templates": {
                     "sink": {
-                        "caps": "video/x-h265:\n  stream-format: { (string)hev1, (string)hvc1, (string)byte-stream }\n      alignment: au\n        profile: { (string)main, (string)main-10 }\n          width: [ 1, 8192 ]\n         height: [ 1, 8192 ]\n",
+                        "caps": "video/x-h265:\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n  stream-format: { (string)hev1, (string)hvc1, (string)byte-stream }\n      alignment: au\n        profile: { (string)main, (string)main-10 }\n",
                         "direction": "sink",
                         "presence": "always"
                     },
                     "src": {
-                        "caps": "video/x-raw:\n         format: { NV12, P010_10LE }\n          width: [ 1, 8192 ]\n         height: [ 1, 8192 ]\n\nvideo/x-raw(format:Interlaced):\n         format: { NV12, P010_10LE }\n          width: [ 1, 8192 ]\n         height: [ 1, 8192 ]\n interlace-mode: alternate\n\nvideo/x-raw(memory:D3D11Memory):\n         format: { NV12, P010_10LE }\n          width: [ 1, 8192 ]\n         height: [ 1, 8192 ]\n",
+                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { NV12, P010_10LE }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\nvideo/x-raw:\n         format: { NV12, P010_10LE }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n",
                         "direction": "src",
                         "presence": "always"
                     }
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "86670",
+                        "default": "0",
                         "max": "9223372036854775807",
                         "min": "-9223372036854775808",
                         "mutable": "null",
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "35410",
+                        "default": "0",
                         "max": "-1",
                         "min": "0",
                         "mutable": "null",
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "32902",
+                        "default": "0",
                         "max": "-1",
                         "min": "0",
                         "mutable": "null",
                         "writable": false
                     }
                 },
-                "rank": "secondary"
+                "rank": "primary + 1"
             },
             "d3d11mpeg2dec": {
                 "author": "Seungha Yang <seungha@centricular.com>",
                     "GObject"
                 ],
                 "klass": "Codec/Decoder/Video/Hardware",
-                "long-name": "Direct3D11/DXVA MPEG2 Intel(R) Iris(R) Plus Graphics Decoder",
                 "pad-templates": {
                     "sink": {
-                        "caps": "video/mpeg:\n    mpegversion: 2\n   systemstream: false\n        profile: { (string)main, (string)simple }\n          width: [ 1, 1920 ]\n         height: [ 1, 1920 ]\n",
+                        "caps": "video/mpeg:\n          width: [ 1, 1920 ]\n         height: [ 1, 1920 ]\n    mpegversion: 2\n   systemstream: false\n        profile: { (string)main, (string)simple }\n",
                         "direction": "sink",
                         "presence": "always"
                     },
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "86670",
+                        "default": "0",
                         "max": "9223372036854775807",
                         "min": "-9223372036854775808",
                         "mutable": "null",
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "35410",
+                        "default": "0",
                         "max": "-1",
                         "min": "0",
                         "mutable": "null",
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "32902",
+                        "default": "0",
                         "max": "-1",
                         "min": "0",
                         "mutable": "null",
                     "GObject"
                 ],
                 "klass": "Filter/Converter/Video/Scaler/Hardware",
-                "long-name": "Direct3D11 scaler",
                 "pad-templates": {
                     "sink": {
-                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
                         "direction": "sink",
                         "presence": "always"
                     },
                     "src": {
-                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
                         "direction": "src",
                         "presence": "always"
                     }
                         "readable": true,
                         "type": "gboolean",
                         "writable": true
+                    },
+                    "border-color": {
+                        "blurb": "Border color to use in ARGB64 format",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "18446462598732840960",
+                        "max": "18446744073709551615",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint64",
+                        "writable": true
                     }
                 },
                 "rank": "none"
             },
             "d3d11screencapturesrc": {
                 "author": "Seungha Yang <seungha@centricular.com>",
-                "description": "Capture desktop image by using Desktop Duplication API",
+                "description": "Captures desktop screen",
                 "hierarchy": [
                     "GstD3D11ScreenCaptureSrc",
                     "GstBaseSrc",
                     "GObject"
                 ],
                 "klass": "Source/Video",
-                "long-name": "Direct3D11 screen capture src",
                 "pad-templates": {
                     "src": {
                         "caps": "video/x-raw(memory:D3D11Memory):\n         format: BGRA\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\nvideo/x-raw:\n         format: BGRA\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
                     }
                 },
                 "properties": {
+                    "adapter": {
+                        "blurb": "DXGI Adapter index for creating device when WGC mode is selected (-1 for default)",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "2147483647",
+                        "min": "-1",
+                        "mutable": "ready",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "capture-api": {
+                        "blurb": "Capture API to use",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "dxgi (0)",
+                        "mutable": "ready",
+                        "readable": true,
+                        "type": "GstD3D11ScreenCaptureAPI",
+                        "writable": true
+                    },
+                    "crop-height": {
+                        "blurb": "Height of screen capture area (0 = maximum)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "-1",
+                        "min": "0",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "crop-width": {
+                        "blurb": "Width of screen capture area (0 = maximum)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "-1",
+                        "min": "0",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "crop-x": {
+                        "blurb": "Horizontal coordinate of top left corner for the screen capture area",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "-1",
+                        "min": "0",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "crop-y": {
+                        "blurb": "Vertical coordinate of top left corner for the screen capture area",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "-1",
+                        "min": "0",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
                     "monitor-handle": {
                         "blurb": "A HMONITOR handle of monitor to capture",
                         "conditionally-available": false,
                         "type": "gint",
                         "writable": true
                     },
+                    "show-border": {
+                        "blurb": "Show border lines to capture area when WGC mode is selected",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
                     "show-cursor": {
                         "blurb": "Whether to show mouse cursor",
                         "conditionally-available": false,
                         "readable": true,
                         "type": "gboolean",
                         "writable": true
+                    },
+                    "window-handle": {
+                        "blurb": "A HWND handle of window to capture",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "18446744073709551615",
+                        "min": "0",
+                        "mutable": "ready",
+                        "readable": true,
+                        "type": "guint64",
+                        "writable": true
+                    }
+                },
+                "rank": "none"
+            },
+            "d3d11testsrc": {
+                "author": "Seungha Yang <seungha@centricular.com>",
+                "description": "Creates a test video stream",
+                "hierarchy": [
+                    "GstD3D11TestSrc",
+                    "GstBaseSrc",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Source/Video",
+                "pad-templates": {
+                    "src": {
+                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\nvideo/x-raw:\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "properties": {
+                    "adapter": {
+                        "blurb": "DXGI Adapter index (-1 for any device)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "2147483647",
+                        "min": "-1",
+                        "mutable": "ready",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "is-live": {
+                        "blurb": "Whether to act as a live source",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "pattern": {
+                        "blurb": "Type of test pattern to generate",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "smpte (0)",
+                        "mutable": "ready",
+                        "readable": true,
+                        "type": "GstD3D11TestSrcPattern",
+                        "writable": true
                     }
                 },
                 "rank": "none"
                     "GObject"
                 ],
                 "klass": "Filter/Video",
-                "long-name": "Direct3D11 uploader",
                 "pad-templates": {
                     "sink": {
-                        "caps": "video/x-raw:\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:SystemMemory, meta:GstVideoOverlayComposition):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:D3D11Memory):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "caps": "video/x-raw:\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:SystemMemory, meta:GstVideoOverlayComposition):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:D3D11Memory):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
                         "direction": "sink",
                         "presence": "always"
                     },
                     "src": {
-                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\nvideo/x-raw:\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:SystemMemory, meta:GstVideoOverlayComposition):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\nvideo/x-raw:\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:SystemMemory, meta:GstVideoOverlayComposition):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
                         "direction": "src",
                         "presence": "always"
                     }
                     "GstNavigation"
                 ],
                 "klass": "Sink/Video",
-                "long-name": "Direct3D11 video sink",
                 "pad-templates": {
                     "sink": {
-                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\nvideo/x-raw:\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:SystemMemory, meta:GstVideoOverlayComposition):\n         format: { BGRA, RGBA, RGB10A2_LE, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:D3D11Memory, meta:GstVideoOverlayComposition):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\nvideo/x-raw:\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:SystemMemory, meta:GstVideoOverlayComposition):\n         format: { RGBA64_LE, RGB10A2_LE, BGRA, RGBA, BGRx, RGBx, VUYA, NV12, NV21, P010_10LE, P012_LE, P016_LE, I420, YV12, I420_10LE, I420_12LE, Y42B, I422_10LE, I422_12LE, Y444, Y444_10LE, Y444_12LE, Y444_16LE, GRAY8, GRAY16_LE, AYUV, AYUV64, Y410 }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
                         "direction": "sink",
                         "presence": "always"
                     }
                         "type": "gint",
                         "writable": true
                     },
+                    "display-format": {
+                        "blurb": "Swapchain display format",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "unknown (0)",
+                        "mutable": "ready",
+                        "readable": true,
+                        "type": "GstD3D11VideoSinkDisplayFormat",
+                        "writable": true
+                    },
                     "draw-on-shared-texture": {
                         "blurb": "Draw on user provided shared texture instead of window. When enabled, user can pass application's own texture to sink by using \"draw\" action signal on \"begin-draw\" signal handler, so that sink can draw video data on application's texture. Supported texture formats for user texture are DXGI_FORMAT_R8G8B8A8_UNORM, DXGI_FORMAT_B8G8R8A8_UNORM, and DXGI_FORMAT_R10G10B10A2_UNORM.",
                         "conditionally-available": false,
                         "type": "gboolean",
                         "writable": true
                     },
+                    "emit-present": {
+                        "blurb": "Emits present signal",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "ready",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
                     "enable-navigation-events": {
                         "blurb": "When enabled, navigation events are sent upstream",
                         "conditionally-available": false,
                         "readable": true,
                         "type": "GstD3D11WindowFullscreenToggleMode",
                         "writable": true
+                    },
+                    "gamma-mode": {
+                        "blurb": "Gamma conversion mode",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "none (0)",
+                        "mutable": "ready",
+                        "readable": true,
+                        "type": "GstVideoGammaMode",
+                        "writable": true
+                    },
+                    "primaries-mode": {
+                        "blurb": "Primaries conversion mode",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "none (0)",
+                        "mutable": "ready",
+                        "readable": true,
+                        "type": "GstVideoPrimariesMode",
+                        "writable": true
+                    },
+                    "rotate-method": {
+                        "blurb": "Rotate method to use",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "identity (0)",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "GstVideoOrientationMethod",
+                        "writable": true
                     }
                 },
                 "rank": "primary",
                         ],
                         "return-type": "gboolean",
                         "when": "last"
+                    },
+                    "present": {
+                        "args": [
+                            {
+                                "name": "arg0",
+                                "type": "GstObject"
+                            },
+                            {
+                                "name": "arg1",
+                                "type": "gpointer"
+                            }
+                        ],
+                        "return-type": "void",
+                        "when": "last"
                     }
                 }
             },
                     "GObject"
                 ],
                 "klass": "Codec/Decoder/Video/Hardware",
-                "long-name": "Direct3D11/DXVA VP8 Intel(R) Iris(R) Plus Graphics Decoder",
                 "pad-templates": {
                     "sink": {
                         "caps": "video/x-vp8:\n          width: [ 1, 4096 ]\n         height: [ 1, 4096 ]\n",
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "86670",
+                        "default": "0",
                         "max": "9223372036854775807",
                         "min": "-9223372036854775808",
                         "mutable": "null",
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "35410",
+                        "default": "0",
                         "max": "-1",
                         "min": "0",
                         "mutable": "null",
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "32902",
+                        "default": "0",
                         "max": "-1",
                         "min": "0",
                         "mutable": "null",
                         "writable": false
                     }
                 },
-                "rank": "secondary"
+                "rank": "primary"
             },
             "d3d11vp9dec": {
                 "author": "Seungha Yang <seungha.yang@navercorp.com>",
                     "GObject"
                 ],
                 "klass": "Codec/Decoder/Video/Hardware",
-                "long-name": "Direct3D11/DXVA VP9 Intel(R) Iris(R) Plus Graphics Decoder",
                 "pad-templates": {
                     "sink": {
-                        "caps": "video/x-vp9:\n      alignment: frame\n        profile: { (string)0, (string)2 }\n          width: [ 1, 8192 ]\n         height: [ 1, 8192 ]\n",
+                        "caps": "video/x-vp9:\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n      alignment: frame\n        profile: { (string)0, (string)2 }\n",
                         "direction": "sink",
                         "presence": "always"
                     },
                     "src": {
-                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { NV12, P010_10LE }\n          width: [ 1, 8192 ]\n         height: [ 1, 8192 ]\nvideo/x-raw:\n         format: { NV12, P010_10LE }\n          width: [ 1, 8192 ]\n         height: [ 1, 8192 ]\n",
+                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { NV12, P010_10LE }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\nvideo/x-raw:\n         format: { NV12, P010_10LE }\n          width: [ 1, 16384 ]\n         height: [ 1, 16384 ]\n",
                         "direction": "src",
                         "presence": "always"
                     }
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "86670",
+                        "default": "0",
                         "max": "9223372036854775807",
                         "min": "-9223372036854775808",
                         "mutable": "null",
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "35410",
+                        "default": "0",
                         "max": "-1",
                         "min": "0",
                         "mutable": "null",
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "32902",
+                        "default": "0",
                         "max": "-1",
                         "min": "0",
                         "mutable": "null",
                         "writable": false
                     }
                 },
-                "rank": "secondary"
+                "rank": "primary"
             }
         },
         "filename": "gstd3d11",
                     }
                 ]
             },
-            "GstD3D11CompositorBinInput": {
+            "GstD3D11CompositorOperator": {
+                "kind": "enum",
+                "values": [
+                    {
+                        "desc": "Source",
+                        "name": "source",
+                        "value": "0"
+                    },
+                    {
+                        "desc": "Over",
+                        "name": "over",
+                        "value": "1"
+                    }
+                ]
+            },
+            "GstD3D11CompositorPad": {
                 "hierarchy": [
-                    "GstD3D11CompositorBinInput",
-                    "GstD3D11CompositorBinPad",
-                    "GstGhostPad",
-                    "GstProxyPad",
+                    "GstD3D11CompositorPad",
+                    "GstVideoAggregatorPad",
+                    "GstAggregatorPad",
                     "GstPad",
                     "GstObject",
                     "GInitiallyUnowned",
                         "construct": false,
                         "construct-only": false,
                         "controllable": true,
-                        "default": "0",
+                        "default": "1",
                         "max": "1",
                         "min": "0",
                         "mutable": "null",
                         "type": "gdouble",
                         "writable": true
                     },
-                    "blend-dest-alpha": {
-                        "blurb": "Blend factor for destination alpha, \"*-color\" values are not allowed",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": true,
-                        "default": "zero (0)",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "GstD3D11CompositorBlend",
-                        "writable": true
-                    },
-                    "blend-dest-rgb": {
-                        "blurb": "Blend factor for destination RGB",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": true,
-                        "default": "zero (0)",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "GstD3D11CompositorBlend",
-                        "writable": true
-                    },
-                    "blend-factor-alpha": {
-                        "blurb": "Blend factor for alpha component when blend type is \"blend-factor\" or \"inv-blend-factor\"",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": true,
-                        "default": "0",
-                        "max": "1",
-                        "min": "0",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "gfloat",
-                        "writable": true
-                    },
-                    "blend-factor-blue": {
-                        "blurb": "Blend factor for blue component when blend type is \"blend-factor\" or \"inv-blend-factor\"",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": true,
-                        "default": "0",
-                        "max": "1",
-                        "min": "0",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "gfloat",
-                        "writable": true
-                    },
-                    "blend-factor-green": {
-                        "blurb": "Blend factor for green component when blend type is \"blend-factor\" or \"inv-blend-factor\"",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": true,
-                        "default": "0",
-                        "max": "1",
-                        "min": "0",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "gfloat",
-                        "writable": true
-                    },
-                    "blend-factor-red": {
-                        "blurb": "Blend factor for red component when blend type is \"blend-factor\" or \"inv-blend-factor\"",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": true,
-                        "default": "0",
-                        "max": "1",
-                        "min": "0",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "gfloat",
-                        "writable": true
-                    },
-                    "blend-op-alpha": {
-                        "blurb": "Blend equation for alpha",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": true,
-                        "default": "add (0)",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "GstD3D11CompositorBlendOperation",
-                        "writable": true
-                    },
-                    "blend-op-rgb": {
-                        "blurb": "Blend equation for RGB",
+                    "gamma-mode": {
+                        "blurb": "Gamma conversion mode",
                         "conditionally-available": false,
                         "construct": false,
                         "construct-only": false,
                         "controllable": true,
-                        "default": "add (0)",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "GstD3D11CompositorBlendOperation",
-                        "writable": true
-                    },
-                    "blend-src-alpha": {
-                        "blurb": "Blend factor for source alpha, \"*-color\" values are not allowed",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": true,
-                        "default": "zero (0)",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "GstD3D11CompositorBlend",
-                        "writable": true
-                    },
-                    "blend-src-rgb": {
-                        "blurb": "Blend factor for source RGB",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": true,
-                        "default": "zero (0)",
+                        "default": "none (0)",
                         "mutable": "null",
                         "readable": true,
-                        "type": "GstD3D11CompositorBlend",
+                        "type": "GstVideoGammaMode",
                         "writable": true
                     },
                     "height": {
                         "type": "gint",
                         "writable": true
                     },
-                    "max-last-buffer-repeat": {
-                        "blurb": "Repeat last buffer for time (in ns, -1=until EOS), behaviour on EOS is not affected",
+                    "operator": {
+                        "blurb": "Blending operator to use for blending this pad over the previous ones",
                         "conditionally-available": false,
                         "construct": false,
                         "construct-only": false,
-                        "controllable": false,
-                        "default": "0",
-                        "max": "18446744073709551615",
-                        "min": "0",
-                        "mutable": "playing",
+                        "controllable": true,
+                        "default": "over (1)",
+                        "mutable": "null",
                         "readable": true,
-                        "type": "guint64",
+                        "type": "GstD3D11CompositorOperator",
                         "writable": true
                     },
-                    "repeat-after-eos": {
-                        "blurb": "Repeat the last frame after EOS until all pads are EOS",
+                    "primaries-mode": {
+                        "blurb": "Primaries conversion mode",
                         "conditionally-available": false,
                         "construct": false,
                         "construct-only": false,
                         "controllable": true,
-                        "default": "false",
+                        "default": "none (0)",
                         "mutable": "null",
                         "readable": true,
-                        "type": "gboolean",
+                        "type": "GstVideoPrimariesMode",
                         "writable": true
                     },
                     "sizing-policy": {
                         "readable": true,
                         "type": "gint",
                         "writable": true
-                    },
-                    "zorder": {
-                        "blurb": "Z Order of the picture",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": true,
-                        "default": "0",
-                        "max": "-1",
-                        "min": "0",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "guint",
-                        "writable": true
                     }
                 }
             },
-            "GstD3D11CompositorBinPad": {
-                "hierarchy": [
-                    "GstD3D11CompositorBinPad",
-                    "GstGhostPad",
-                    "GstProxyPad",
-                    "GstPad",
-                    "GstObject",
-                    "GInitiallyUnowned",
-                    "GObject"
-                ],
-                "kind": "object",
-                "properties": {
-                    "emit-signals": {
-                        "blurb": "Send signals to signal data consumption",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": false,
-                        "default": "false",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "gboolean",
-                        "writable": true
-                    }
-                },
-                "signals": {
-                    "buffer-consumed": {
-                        "args": [
-                            {
-                                "name": "arg0",
-                                "type": "GstBuffer"
-                            }
-                        ],
-                        "return-type": "void",
-                        "when": "first"
-                    }
-                }
-            },
-            "GstD3D11CompositorBlend": {
+            "GstD3D11CompositorSizingPolicy": {
                 "kind": "enum",
                 "values": [
                     {
-                        "desc": "The blend factor is (0, 0, 0, 0)",
-                        "name": "zero",
+                        "desc": "None: Image is scaled to fill configured destination rectangle without padding or keeping the aspect ratio",
+                        "name": "none",
                         "value": "0"
                     },
                     {
-                        "desc": "The blend factor is (1, 1, 1, 1)",
-                        "name": "one",
+                        "desc": "Keep Aspect Ratio: Image is scaled to fit destination rectangle specified by GstCompositorPad:{xpos, ypos, width, height} with preserved aspect ratio. Resulting image will be centered in the destination rectangle with padding if necessary",
+                        "name": "keep-aspect-ratio",
                         "value": "1"
-                    },
-                    {
-                        "desc": "The blend factor is (Rs, Gs, Bs, As)",
-                        "name": "src-color",
-                        "value": "2"
-                    },
-                    {
-                        "desc": "The blend factor is (1 - Rs, 1 - Gs, 1 - Bs, 1 - As)",
-                        "name": "inv-src-color",
-                        "value": "3"
-                    },
-                    {
-                        "desc": "The blend factor is (As, As, As, As)",
-                        "name": "src-alpha",
-                        "value": "4"
-                    },
-                    {
-                        "desc": "The blend factor is (1 - As, 1 - As, 1 - As, 1 - As)",
-                        "name": "inv-src-alpha",
-                        "value": "5"
-                    },
-                    {
-                        "desc": "The blend factor is (Ad, Ad, Ad, Ad)",
-                        "name": "dest-alpha",
-                        "value": "6"
-                    },
+                    }
+                ]
+            },
+            "GstD3D11DeinterlaceMethod": {
+                "kind": "flags",
+                "values": [
                     {
-                        "desc": "The blend factor is (1 - Ad, 1 - Ad, 1 - Ad, 1 - Ad)",
-                        "name": "inv-dest-alpha",
-                        "value": "7"
+                        "desc": "Blend: Blending top/bottom field pictures into one frame. Framerate will be preserved (e.g., 60i -> 30p)",
+                        "name": "blend",
+                        "value": "0x00000001"
                     },
                     {
-                        "desc": "The blend factor is (Rd, Gd, Bd, Ad)",
-                        "name": "dest-color",
-                        "value": "8"
+                        "desc": "Bob: Interpolating missing lines by using the adjacent lines. Framerate will be doubled (e,g, 60i -> 60p)",
+                        "name": "bob",
+                        "value": "0x00000002"
                     },
                     {
-                        "desc": "The blend factor is (1 - Rd, 1 - Gd, 1 - Bd, 1 - Ad)",
-                        "name": "inv-dest-color",
-                        "value": "9"
+                        "desc": "Adaptive: Interpolating missing lines by using spatial/temporal references. Framerate will be doubled (e,g, 60i -> 60p)",
+                        "name": "adaptive",
+                        "value": "0x00000004"
                     },
                     {
-                        "desc": "The blend factor is (f, f, f, 1); where f = min(As, 1 - Ad)",
-                        "name": "src-alpha-sat",
-                        "value": "10"
-                    },
+                        "desc": "Motion Compensation: Recreating missing lines by using motion vector. Framerate will be doubled (e,g, 60i -> 60p)",
+                        "name": "mocomp",
+                        "value": "0x00000008"
+                    }
+                ]
+            },
+            "GstD3D11ScreenCaptureAPI": {
+                "kind": "enum",
+                "values": [
                     {
-                        "desc": "User defined blend factor",
-                        "name": "blend-factor",
-                        "value": "11"
+                        "desc": "DXGI Desktop Duplication",
+                        "name": "dxgi",
+                        "value": "0"
                     },
                     {
-                        "desc": "Inverse of user defined blend factor",
-                        "name": "inv-blend-factor",
-                        "value": "12"
+                        "desc": "Windows Graphics Capture",
+                        "name": "wgc",
+                        "value": "1"
                     }
                 ]
             },
-            "GstD3D11CompositorBlendOperation": {
+            "GstD3D11TestSrcPattern": {
                 "kind": "enum",
                 "values": [
                     {
-                        "desc": "Add source and background",
-                        "name": "add",
+                        "desc": "SMPTE 100%% color bars",
+                        "name": "smpte",
                         "value": "0"
                     },
                     {
-                        "desc": "Subtract source from background",
-                        "name": "subtract",
+                        "desc": "Random (television snow)",
+                        "name": "snow",
                         "value": "1"
                     },
                     {
-                        "desc": "Subtract background from source",
-                        "name": "rev-subtract",
+                        "desc": "100%% Black",
+                        "name": "black",
                         "value": "2"
                     },
                     {
-                        "desc": "Minimum of source and background",
-                        "name": "min",
+                        "desc": "100%% White",
+                        "name": "white",
                         "value": "3"
                     },
                     {
-                        "desc": "Maximum of source and background",
-                        "name": "max",
+                        "desc": "Red",
+                        "name": "red",
                         "value": "4"
-                    }
-                ]
-            },
-            "GstD3D11CompositorPad": {
-                "hierarchy": [
-                    "GstD3D11CompositorPad",
-                    "GstVideoAggregatorPad",
-                    "GstAggregatorPad",
-                    "GstPad",
-                    "GstObject",
-                    "GInitiallyUnowned",
-                    "GObject"
-                ],
-                "kind": "object",
-                "properties": {
-                    "alpha": {
-                        "blurb": "Alpha of the picture",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": true,
-                        "default": "1",
-                        "max": "1",
-                        "min": "0",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "gdouble",
-                        "writable": true
-                    },
-                    "blend-dest-alpha": {
-                        "blurb": "Blend factor for destination alpha, \"*-color\" values are not allowed",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": true,
-                        "default": "inv-src-alpha (5)",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "GstD3D11CompositorBlend",
-                        "writable": true
-                    },
-                    "blend-dest-rgb": {
-                        "blurb": "Blend factor for destination RGB",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": true,
-                        "default": "inv-src-alpha (5)",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "GstD3D11CompositorBlend",
-                        "writable": true
-                    },
-                    "blend-factor-alpha": {
-                        "blurb": "Blend factor for alpha component when blend type is \"blend-factor\" or \"inv-blend-factor\"",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": true,
-                        "default": "1",
-                        "max": "1",
-                        "min": "0",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "gfloat",
-                        "writable": true
-                    },
-                    "blend-factor-blue": {
-                        "blurb": "Blend factor for blue component when blend type is \"blend-factor\" or \"inv-blend-factor\"",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": true,
-                        "default": "1",
-                        "max": "1",
-                        "min": "0",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "gfloat",
-                        "writable": true
-                    },
-                    "blend-factor-green": {
-                        "blurb": "Blend factor for green component when blend type is \"blend-factor\" or \"inv-blend-factor\"",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": true,
-                        "default": "1",
-                        "max": "1",
-                        "min": "0",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "gfloat",
-                        "writable": true
-                    },
-                    "blend-factor-red": {
-                        "blurb": "Blend factor for red component when blend type is \"blend-factor\" or \"inv-blend-factor\"",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": true,
-                        "default": "1",
-                        "max": "1",
-                        "min": "0",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "gfloat",
-                        "writable": true
                     },
-                    "blend-op-alpha": {
-                        "blurb": "Blend equation for alpha",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": true,
-                        "default": "add (0)",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "GstD3D11CompositorBlendOperation",
-                        "writable": true
-                    },
-                    "blend-op-rgb": {
-                        "blurb": "Blend equation for RGB",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": true,
-                        "default": "add (0)",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "GstD3D11CompositorBlendOperation",
-                        "writable": true
-                    },
-                    "blend-src-alpha": {
-                        "blurb": "Blend factor for source alpha, \"*-color\" values are not allowed",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": true,
-                        "default": "one (1)",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "GstD3D11CompositorBlend",
-                        "writable": true
-                    },
-                    "blend-src-rgb": {
-                        "blurb": "Blend factor for source RGB",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": true,
-                        "default": "src-alpha (4)",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "GstD3D11CompositorBlend",
-                        "writable": true
-                    },
-                    "height": {
-                        "blurb": "Height of the picture",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": true,
-                        "default": "0",
-                        "max": "2147483647",
-                        "min": "-2147483648",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "gint",
-                        "writable": true
+                    {
+                        "desc": "Green",
+                        "name": "green",
+                        "value": "5"
                     },
-                    "sizing-policy": {
-                        "blurb": "Sizing policy to use for image scaling",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": true,
-                        "default": "none (0)",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "GstD3D11CompositorSizingPolicy",
-                        "writable": true
+                    {
+                        "desc": "Blue",
+                        "name": "blue",
+                        "value": "6"
                     },
-                    "width": {
-                        "blurb": "Width of the picture",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": true,
-                        "default": "0",
-                        "max": "2147483647",
-                        "min": "-2147483648",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "gint",
-                        "writable": true
+                    {
+                        "desc": "Checkers 1px",
+                        "name": "checkers-1",
+                        "value": "7"
                     },
-                    "xpos": {
-                        "blurb": "X position of the picture",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": true,
-                        "default": "0",
-                        "max": "2147483647",
-                        "min": "-2147483648",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "gint",
-                        "writable": true
+                    {
+                        "desc": "Checkers 2px",
+                        "name": "checkers-2",
+                        "value": "8"
                     },
-                    "ypos": {
-                        "blurb": "Y position of the picture",
-                        "conditionally-available": false,
-                        "construct": false,
-                        "construct-only": false,
-                        "controllable": true,
-                        "default": "0",
-                        "max": "2147483647",
-                        "min": "-2147483648",
-                        "mutable": "null",
-                        "readable": true,
-                        "type": "gint",
-                        "writable": true
-                    }
-                }
-            },
-            "GstD3D11CompositorSizingPolicy": {
-                "kind": "enum",
-                "values": [
                     {
-                        "desc": "None: Image is scaled to fill configured destination rectangle without padding or keeping the aspect ratio",
-                        "name": "none",
-                        "value": "0"
+                        "desc": "Checkers 4px",
+                        "name": "checkers-4",
+                        "value": "9"
                     },
                     {
-                        "desc": "Keep Aspect Ratio: Image is scaled to fit destination rectangle specified by GstCompositorPad:{xpos, ypos, width, height} with preserved aspect ratio. Resulting image will be centered in the destination rectangle with padding if necessary",
-                        "name": "keep-aspect-ratio",
-                        "value": "1"
+                        "desc": "Checkers 8px",
+                        "name": "checkers-8",
+                        "value": "10"
                     }
                 ]
             },
-            "GstD3D11DeinterlaceMethod": {
-                "kind": "flags",
+            "GstD3D11VideoSinkDisplayFormat": {
+                "kind": "enum",
                 "values": [
                     {
-                        "desc": "Blend: Blending top/bottom field pictures into one frame. Framerate will be preserved (e.g., 60i -> 30p)",
-                        "name": "blend",
-                        "value": "0x00000001"
+                        "desc": "DXGI_FORMAT_UNKNOWN",
+                        "name": "unknown",
+                        "value": "0"
                     },
                     {
-                        "desc": "Bob: Interpolating missing lines by using the adjacent lines. Framerate will be doubled (e,g, 60i -> 60p)",
-                        "name": "bob",
-                        "value": "0x00000002"
+                        "desc": "DXGI_FORMAT_R10G10B10A2_UNORM",
+                        "name": "r10g10b10a2-unorm",
+                        "value": "24"
                     },
                     {
-                        "desc": "Adaptive: Interpolating missing lines by using spatial/temporal references. Framerate will be doubled (e,g, 60i -> 60p)",
-                        "name": "adaptive",
-                        "value": "0x00000004"
+                        "desc": "DXGI_FORMAT_R8G8B8A8_UNORM",
+                        "name": "r8g8b8a8-unorm",
+                        "value": "28"
                     },
                     {
-                        "desc": "Motion Compensation: Recreating missing lines by using motion vector. Framerate will be doubled (e,g, 60i -> 60p)",
-                        "name": "mocomp",
-                        "value": "0x00000008"
+                        "desc": "DXGI_FORMAT_B8G8R8A8_UNORM",
+                        "name": "b8g8r8a8-unorm",
+                        "value": "87"
                     }
                 ]
             },
         "tracers": {},
         "url": "Unknown package origin"
     },
+    "directshow": {
+        "description": "DirectShow plugin",
+        "elements": {
+            "dshowadec_mp3": {
+                "author": "Sebastien Moutte <sebastien@moutte.net>",
+                "description": "DirectShow MPEG Layer 3 Audio Decoder Wrapper",
+                "hierarchy": [
+                    "dshowadec_mp3",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Audio",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "audio/mpeg:\n    mpegversion: 1\n          layer: 3\n           rate: [ 8000, 48000 ]\n       channels: [ 1, 2 ]\n         parsed: true\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "audio/x-raw:\n         format: { F64LE, F64BE, F32LE, F32BE, S32LE, S32BE, U32LE, U32BE, S24_32LE, S24_32BE, U24_32LE, U24_32BE, S24LE, S24BE, U24LE, U24BE, S20LE, S20BE, U20LE, U20BE, S18LE, S18BE, U18LE, U18BE, S16LE, S16BE, U16LE, U16BE, S8, U8 }\n           rate: [ 1, 2147483647 ]\n       channels: [ 1, 2147483647 ]\n         layout: interleaved\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "marginal"
+            },
+            "dshowadec_mpeg_1_2": {
+                "author": "Sebastien Moutte <sebastien@moutte.net>",
+                "description": "DirectShow MPEG Layer 1,2 Audio Decoder Wrapper",
+                "hierarchy": [
+                    "dshowadec_mpeg_1_2",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Audio",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "audio/mpeg:\n    mpegversion: 1\n          layer: [ 1, 2 ]\n           rate: [ 8000, 48000 ]\n       channels: [ 1, 2 ]\n         parsed: true\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "audio/x-raw:\n         format: { F64LE, F64BE, F32LE, F32BE, S32LE, S32BE, U32LE, U32BE, S24_32LE, S24_32BE, U24_32LE, U24_32BE, S24LE, S24BE, U24LE, U24BE, S20LE, S20BE, U20LE, U20BE, S18LE, S18BE, U18LE, U18BE, S16LE, S16BE, U16LE, U16BE, S8, U8 }\n           rate: [ 1, 2147483647 ]\n       channels: [ 1, 2147483647 ]\n         layout: interleaved\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "marginal"
+            },
+            "dshowadec_wma1": {
+                "author": "Sebastien Moutte <sebastien@moutte.net>",
+                "description": "DirectShow Windows Media Audio 7 Decoder Wrapper",
+                "hierarchy": [
+                    "dshowadec_wma1",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Audio",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "audio/x-wma:\n     wmaversion: 1\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "audio/x-raw:\n         format: { F64LE, F64BE, F32LE, F32BE, S32LE, S32BE, U32LE, U32BE, S24_32LE, S24_32BE, U24_32LE, U24_32BE, S24LE, S24BE, U24LE, U24BE, S20LE, S20BE, U20LE, U20BE, S18LE, S18BE, U18LE, U18BE, S16LE, S16BE, U16LE, U16BE, S8, U8 }\n           rate: [ 1, 2147483647 ]\n       channels: [ 1, 2147483647 ]\n         layout: interleaved\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "marginal"
+            },
+            "dshowadec_wma2": {
+                "author": "Sebastien Moutte <sebastien@moutte.net>",
+                "description": "DirectShow Windows Media Audio 8 Decoder Wrapper",
+                "hierarchy": [
+                    "dshowadec_wma2",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Audio",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "audio/x-wma:\n     wmaversion: 2\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "audio/x-raw:\n         format: { F64LE, F64BE, F32LE, F32BE, S32LE, S32BE, U32LE, U32BE, S24_32LE, S24_32BE, U24_32LE, U24_32BE, S24LE, S24BE, U24LE, U24BE, S20LE, S20BE, U20LE, U20BE, S18LE, S18BE, U18LE, U18BE, S16LE, S16BE, U16LE, U16BE, S8, U8 }\n           rate: [ 1, 2147483647 ]\n       channels: [ 1, 2147483647 ]\n         layout: interleaved\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "marginal"
+            },
+            "dshowadec_wma3": {
+                "author": "Sebastien Moutte <sebastien@moutte.net>",
+                "description": "DirectShow Windows Media Audio 9 Professional Decoder Wrapper",
+                "hierarchy": [
+                    "dshowadec_wma3",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Audio",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "audio/x-wma:\n     wmaversion: 3\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "audio/x-raw:\n         format: { F64LE, F64BE, F32LE, F32BE, S32LE, S32BE, U32LE, U32BE, S24_32LE, S24_32BE, U24_32LE, U24_32BE, S24LE, S24BE, U24LE, U24BE, S20LE, S20BE, U20LE, U20BE, S18LE, S18BE, U18LE, U18BE, S16LE, S16BE, U16LE, U16BE, S8, U8 }\n           rate: [ 1, 2147483647 ]\n       channels: [ 1, 2147483647 ]\n         layout: interleaved\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "marginal"
+            },
+            "dshowadec_wma4": {
+                "author": "Sebastien Moutte <sebastien@moutte.net>",
+                "description": "DirectShow Windows Media Audio 9 Lossless Decoder Wrapper",
+                "hierarchy": [
+                    "dshowadec_wma4",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Audio",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "audio/x-wma:\n     wmaversion: 4\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "audio/x-raw:\n         format: { F64LE, F64BE, F32LE, F32BE, S32LE, S32BE, U32LE, U32BE, S24_32LE, S24_32BE, U24_32LE, U24_32BE, S24LE, S24BE, U24LE, U24BE, S20LE, S20BE, U20LE, U20BE, S18LE, S18BE, U18LE, U18BE, S16LE, S16BE, U16LE, U16BE, S8, U8 }\n           rate: [ 1, 2147483647 ]\n       channels: [ 1, 2147483647 ]\n         layout: interleaved\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "marginal"
+            },
+            "dshowadec_wms": {
+                "author": "Sebastien Moutte <sebastien@moutte.net>",
+                "description": "DirectShow Windows Media Audio Voice v9 Decoder Wrapper",
+                "hierarchy": [
+                    "dshowadec_wms",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Audio",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "audio/x-wms:\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "audio/x-raw:\n         format: { F64LE, F64BE, F32LE, F32BE, S32LE, S32BE, U32LE, U32BE, S24_32LE, S24_32BE, U24_32LE, U24_32BE, S24LE, S24BE, U24LE, U24BE, S20LE, S20BE, U20LE, U20BE, S18LE, S18BE, U18LE, U18BE, S16LE, S16BE, U16LE, U16BE, S8, U8 }\n           rate: [ 1, 2147483647 ]\n       channels: [ 1, 2147483647 ]\n         layout: interleaved\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "marginal"
+            },
+            "dshowaudiosrc": {
+                "author": "Sebastien Moutte <sebastien@moutte.net>",
+                "description": "Receive data from a directshow audio capture graph",
+                "hierarchy": [
+                    "GstDshowAudioSrc",
+                    "GstAudioSrc",
+                    "GstAudioBaseSrc",
+                    "GstPushSrc",
+                    "GstBaseSrc",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Source/Audio",
+                "pad-templates": {
+                    "src": {
+                        "caps": "audio/x-raw:\n         format: { S16LE, U16LE, S8LE, U8LE }\n           rate: [ 1, 2147483647 ]\n       channels: [ 1, 2 ]\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "properties": {
+                    "device": {
+                        "blurb": "Directshow device reference (classID/name)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "NULL",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "gchararray",
+                        "writable": true
+                    },
+                    "device-index": {
+                        "blurb": "Index of the enumerated audio device",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "2147483647",
+                        "min": "0",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "device-name": {
+                        "blurb": "Human-readable name of the sound device",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "NULL",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "gchararray",
+                        "writable": true
+                    }
+                },
+                "rank": "none"
+            },
+            "dshowvdec_cinepak": {
+                "author": "Sebastien Moutte <sebastien@moutte.net>",
+                "description": "DirectShow Cinepack Decoder Wrapper",
+                "hierarchy": [
+                    "dshowvdec_cinepak",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Video",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "video/x-cinepak:\n          width: [ 16, 4096 ]\n         height: [ 16, 4096 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "video/x-raw:\n         format: RGB\n            bpp: 32\n          depth: 24\n     endianness: 4321\n       red_mask: 65280\n     green_mask: 16711680\n      blue_mask: -16777216\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "marginal"
+            },
+            "dshowvdec_divx3": {
+                "author": "Sebastien Moutte <sebastien@moutte.net>",
+                "description": "DirectShow DIVX 3.0 Video Decoder Wrapper",
+                "hierarchy": [
+                    "dshowvdec_divx3",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Video",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "video/x-divx:\n    divxversion: 3\n          width: [ 16, 4096 ]\n         height: [ 16, 4096 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "video/x-raw:\n         format: YUY2\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "marginal"
+            },
+            "dshowvdec_divx4": {
+                "author": "Sebastien Moutte <sebastien@moutte.net>",
+                "description": "DirectShow DIVX 4.0 Video Decoder Wrapper",
+                "hierarchy": [
+                    "dshowvdec_divx4",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Video",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "video/x-divx:\n    divxversion: 4\n          width: [ 16, 4096 ]\n         height: [ 16, 4096 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "video/x-raw:\n         format: YUY2\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "marginal"
+            },
+            "dshowvdec_divx5": {
+                "author": "Sebastien Moutte <sebastien@moutte.net>",
+                "description": "DirectShow DIVX 5.0 Video Decoder Wrapper",
+                "hierarchy": [
+                    "dshowvdec_divx5",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Video",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "video/x-divx:\n    divxversion: 5\n          width: [ 16, 4096 ]\n         height: [ 16, 4096 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "video/x-raw:\n         format: YUY2\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "marginal"
+            },
+            "dshowvdec_mpeg1": {
+                "author": "Sebastien Moutte <sebastien@moutte.net>",
+                "description": "DirectShow MPEG-1 Video Decoder Wrapper",
+                "hierarchy": [
+                    "dshowvdec_mpeg1",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Video",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "video/mpeg:\n    mpegversion: 1\n         parsed: true\n   systemstream: false\n          width: [ 16, 4096 ]\n         height: [ 16, 4096 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "video/x-raw:\n         format: YUY2\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "marginal"
+            },
+            "dshowvdec_mpeg4": {
+                "author": "Sebastien Moutte <sebastien@moutte.net>",
+                "description": "DirectShow MPEG-4 Video Decoder Wrapper",
+                "hierarchy": [
+                    "dshowvdec_mpeg4",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Video",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "video/mpeg:\n  msmpegversion: 4\n          width: [ 16, 4096 ]\n         height: [ 16, 4096 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "video/x-raw:\n         format: YUY2\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "marginal"
+            },
+            "dshowvdec_msmpeg4": {
+                "author": "Sebastien Moutte <sebastien@moutte.net>",
+                "description": "DirectShow Microsoft ISO MPEG-4 version 1.1 Decoder Wrapper",
+                "hierarchy": [
+                    "dshowvdec_msmpeg4",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Video",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "video/x-msmpeg:\n  msmpegversion: 4\n          width: [ 16, 4096 ]\n         height: [ 16, 4096 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "video/x-raw:\n         format: YUY2\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "marginal"
+            },
+            "dshowvdec_msmpeg41": {
+                "author": "Sebastien Moutte <sebastien@moutte.net>",
+                "description": "DirectShow Microsoft ISO MPEG-4 version 1 Decoder Wrapper",
+                "hierarchy": [
+                    "dshowvdec_msmpeg41",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Video",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "video/x-msmpeg:\n  msmpegversion: 41\n          width: [ 16, 4096 ]\n         height: [ 16, 4096 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "video/x-raw:\n         format: YUY2\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "marginal"
+            },
+            "dshowvdec_msmpeg42": {
+                "author": "Sebastien Moutte <sebastien@moutte.net>",
+                "description": "DirectShow Microsoft ISO MPEG-4 version 2 Decoder Wrapper",
+                "hierarchy": [
+                    "dshowvdec_msmpeg42",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Video",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "video/x-msmpeg:\n  msmpegversion: 42\n          width: [ 16, 4096 ]\n         height: [ 16, 4096 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "video/x-raw:\n         format: YUY2\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "marginal"
+            },
+            "dshowvdec_msmpeg43": {
+                "author": "Sebastien Moutte <sebastien@moutte.net>",
+                "description": "DirectShow Microsoft ISO MPEG-4 version 3 Decoder Wrapper",
+                "hierarchy": [
+                    "dshowvdec_msmpeg43",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Video",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "video/x-msmpeg:\n  msmpegversion: 43\n          width: [ 16, 4096 ]\n         height: [ 16, 4096 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "video/x-raw:\n         format: YUY2\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "marginal"
+            },
+            "dshowvdec_wmv1": {
+                "author": "Sebastien Moutte <sebastien@moutte.net>",
+                "description": "DirectShow Windows Media Video 7 Decoder Wrapper",
+                "hierarchy": [
+                    "dshowvdec_wmv1",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Video",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "video/x-wmv:\n     wmvversion: 1\n          width: [ 16, 4096 ]\n         height: [ 16, 4096 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "video/x-raw:\n         format: YUY2\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "marginal"
+            },
+            "dshowvdec_wmv2": {
+                "author": "Sebastien Moutte <sebastien@moutte.net>",
+                "description": "DirectShow Windows Media Video 8 Decoder Wrapper",
+                "hierarchy": [
+                    "dshowvdec_wmv2",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Video",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "video/x-wmv:\n     wmvversion: 2\n          width: [ 16, 4096 ]\n         height: [ 16, 4096 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "video/x-raw:\n         format: YUY2\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "marginal"
+            },
+            "dshowvdec_wmv3": {
+                "author": "Sebastien Moutte <sebastien@moutte.net>",
+                "description": "DirectShow Windows Media Video 9 Decoder Wrapper",
+                "hierarchy": [
+                    "dshowvdec_wmv3",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Video",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "video/x-wmv:\n     wmvversion: 3\n         format: WMV3\n          width: [ 16, 4096 ]\n         height: [ 16, 4096 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "video/x-raw:\n         format: YUY2\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "marginal"
+            },
+            "dshowvdec_wmva": {
+                "author": "Sebastien Moutte <sebastien@moutte.net>",
+                "description": "DirectShow Windows Media Video 9 Advanced Decoder Wrapper",
+                "hierarchy": [
+                    "dshowvdec_wmva",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Video",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "video/x-wmv:\n     wmvversion: 3\n         format: WMVA\n          width: [ 16, 4096 ]\n         height: [ 16, 4096 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "video/x-raw:\n         format: YUY2\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "marginal"
+            },
+            "dshowvdec_wmvp": {
+                "author": "Sebastien Moutte <sebastien@moutte.net>",
+                "description": "DirectShow Windows Media Video 9 Image Decoder Wrapper",
+                "hierarchy": [
+                    "dshowvdec_wmvp",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Video",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "video/x-wmv:\n     wmvversion: 3\n         format: { WMVP, MSS1 }\n          width: [ 16, 4096 ]\n         height: [ 16, 4096 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "video/x-raw:\n         format: YUY2\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "marginal"
+            },
+            "dshowvdec_wvc1": {
+                "author": "Sebastien Moutte <sebastien@moutte.net>",
+                "description": "DirectShow Windows Media VC1 video Decoder Wrapper",
+                "hierarchy": [
+                    "dshowvdec_wvc1",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Video",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "video/x-wmv:\n     wmvversion: 3\n         format: WVC1\n          width: [ 16, 4096 ]\n         height: [ 16, 4096 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "video/x-raw:\n         format: YUY2\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "marginal + 2"
+            },
+            "dshowvdec_xvid": {
+                "author": "Sebastien Moutte <sebastien@moutte.net>",
+                "description": "DirectShow XVID Video Decoder Wrapper",
+                "hierarchy": [
+                    "dshowvdec_xvid",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Video",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "video/x-xvid:\n          width: [ 16, 4096 ]\n         height: [ 16, 4096 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "video/x-raw:\n         format: YUY2\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "marginal"
+            },
+            "dshowvideosink": {
+                "author": "Pioneers of the Inevitable <songbird@songbirdnest.com>, FLUENDO S.A. <support@fluendo.com>",
+                "description": "Display data using a DirectShow video renderer",
+                "hierarchy": [
+                    "GstDshowVideoSink",
+                    "GstVideoSink",
+                    "GstBaseSink",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "interfaces": [
+                    "GstVideoOverlay",
+                    "GstNavigation"
+                ],
+                "klass": "Sink/Video",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "video/x-raw:\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n         format: { YUY2, UYVY, YV12 }\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    }
+                },
+                "properties": {
+                    "force-aspect-ratio": {
+                        "blurb": "When enabled, scaling will respect original aspect ratio",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "fullscreen": {
+                        "blurb": "Use full-screen mode (not available when using XOverlay)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "renderer": {
+                        "blurb": "Force usage of specific DirectShow renderer (EVR, VMR9 or VMR7)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "NULL",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "gchararray",
+                        "writable": true
+                    }
+                },
+                "rank": "marginal"
+            },
+            "dshowvideosrc": {
+                "author": "Sebastien Moutte <sebastien@moutte.net>",
+                "description": "Receive data from a directshow video capture graph",
+                "hierarchy": [
+                    "GstDshowVideoSrc",
+                    "GstPushSrc",
+                    "GstBaseSrc",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Source/Video",
+                "pad-templates": {
+                    "src": {
+                        "caps": "video/x-raw:\n         format: { I420, BGR, YUY2, UYVY, BGRx, BGR16, BGR15, GRAY8 }\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\nvideo/x-dv:\n         format: DVSD\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n   systemstream: { (boolean)true, (boolean)false }\nimage/jpeg:\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\nvideo/x-h264:\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "properties": {
+                    "device": {
+                        "blurb": "Directshow device path (@..classID/name)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "NULL",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "gchararray",
+                        "writable": true
+                    },
+                    "device-index": {
+                        "blurb": "Index of the enumerated video device",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "2147483647",
+                        "min": "0",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "device-name": {
+                        "blurb": "Human-readable name of the video device",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "NULL",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "gchararray",
+                        "writable": true
+                    }
+                },
+                "rank": "none"
+            }
+        },
+        "filename": "gstdirectshow",
+        "license": "LGPL",
+        "other-types": {},
+        "package": "GStreamer Bad Plug-ins",
+        "source": "gst-plugins-bad",
+        "tracers": {},
+        "url": "Unknown package origin"
+    },
     "directsoundsrc": {
         "description": "Direct Sound Source plugin library",
         "elements": {
     "mediafoundation": {
         "description": "Microsoft Media Foundation plugin",
         "elements": {
+            "mfaacdec": {
+                "author": "Seungha Yang <seungha@centricular.com>",
+                "description": "Microsoft Media Foundation AAC Decoder",
+                "hierarchy": [
+                    "GstMFAacDec",
+                    "GstMFAudioDecoder",
+                    "GstAudioDecoder",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Audio",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "audio/mpeg:\n    mpegversion: { (int)2, (int)4 }\n  stream-format: raw\n         framed: true\n       channels: [ 1, 6 ]\n           rate: [ 8000, 48000 ]\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "audio/x-raw:\n         format: S16LE\n         layout: interleaved\n       channels: [ 1, 6 ]\n           rate: [ 8000, 48000 ]\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "secondary"
+            },
             "mfaacenc": {
                 "author": "Seungha Yang <seungha@centricular.com>",
                 "description": "Microsoft Media Foundation AAC Encoder",
                 "hierarchy": [
                     "GstMFAacEnc",
-                    "GstMFAudioEnc",
+                    "GstMFAudioEncoder",
                     "GstAudioEncoder",
                     "GstElement",
                     "GstObject",
                     "GstPreset"
                 ],
                 "klass": "Codec/Encoder/Audio",
-                "long-name": "Media Foundation Microsoft AAC Audio Encoder MFT",
                 "pad-templates": {
                     "sink": {
                         "caps": "audio/x-raw:\n         layout: interleaved\n         format: S16LE\n       channels: { (int)1, (int)2, (int)6 }\n           rate: { (int)44100, (int)48000 }\n",
                 "description": "Microsoft Media Foundation H.264 Encoder",
                 "hierarchy": [
                     "GstMFH264Enc",
-                    "GstMFVideoEnc",
+                    "GstMFVideoEncoder",
                     "GstVideoEncoder",
                     "GstElement",
                     "GstObject",
                     "GstPreset"
                 ],
                 "klass": "Codec/Encoder/Video/Hardware",
-                "long-name": "Media Foundation Intel® Quick Sync Video H.264 Encoder MFT",
                 "pad-templates": {
                     "sink": {
-                        "caps": "video/x-raw:\n          width: [ 64, 8192 ]\n         height: [ 64, 8192 ]\n         format: { NV12 }\n\nvideo/x-raw(memory:D3D11Memory):\n          width: [ 64, 8192 ]\n         height: [ 64, 8192 ]\n         format: { NV12 }\n",
+                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: NV12\n          width: [ 64, 8192 ]\n         height: [ 64, 8192 ]\nvideo/x-raw:\n         format: NV12\n          width: [ 64, 8192 ]\n         height: [ 64, 8192 ]\n",
                         "direction": "sink",
                         "presence": "always"
                     },
                     "src": {
-                        "caps": "video/x-h264:\n  stream-format: byte-stream\n      alignment: au\n        profile: { (string)high, (string)main, (string)constrained-baseline, (string)baseline }\n          width: [ 64, 8192 ]\n         height: [ 64, 8192 ]\n",
+                        "caps": "video/x-h264:\n          width: [ 64, 8192 ]\n         height: [ 64, 8192 ]\n  stream-format: byte-stream\n      alignment: au\n        profile: { (string)high, (string)main, (string)constrained-baseline, (string)baseline }\n",
                         "direction": "src",
                         "presence": "always"
                     }
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "86670",
+                        "default": "0",
                         "max": "9223372036854775807",
                         "min": "-9223372036854775808",
                         "mutable": "null",
                         "type": "gint64",
                         "writable": false
                     },
+                    "adaptive-mode": {
+                        "blurb": "Adaptive Mode",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "none (0)",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "GstMFH264EncAdaptiveMode",
+                        "writable": true
+                    },
                     "bframes": {
                         "blurb": "The maximum number of consecutive B frames",
                         "conditionally-available": true,
                         "type": "guint",
                         "writable": true
                     },
+                    "max-qp": {
+                        "blurb": "The maximum allowed QP applied to all rc-mode",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "51",
+                        "max": "51",
+                        "min": "0",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "min-qp": {
+                        "blurb": "The minimum allowed QP applied to all rc-mode",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "51",
+                        "min": "0",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
                     "qp": {
                         "blurb": "QP applied when rc-mode is \"qvbr\"",
                         "conditionally-available": true,
                 "description": "Microsoft Media Foundation H.265 Encoder",
                 "hierarchy": [
                     "GstMFH265Enc",
-                    "GstMFVideoEnc",
+                    "GstMFVideoEncoder",
                     "GstVideoEncoder",
                     "GstElement",
                     "GstObject",
                     "GstPreset"
                 ],
                 "klass": "Codec/Encoder/Video/Hardware",
-                "long-name": "Media Foundation Intel® Hardware H265 Encoder MFT",
                 "pad-templates": {
                     "sink": {
-                        "caps": "video/x-raw:\n          width: [ 64, 8192 ]\n         height: [ 64, 8192 ]\n         format: { NV12, P010_10LE }\n\nvideo/x-raw(memory:D3D11Memory):\n          width: [ 64, 8192 ]\n         height: [ 64, 8192 ]\n         format: { NV12, P010_10LE }\n",
+                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { NV12, P010_10LE }\n          width: [ 64, 8192 ]\n         height: [ 64, 8192 ]\nvideo/x-raw:\n         format: { NV12, P010_10LE }\n          width: [ 64, 8192 ]\n         height: [ 64, 8192 ]\n",
                         "direction": "sink",
                         "presence": "always"
                     },
                     "src": {
-                        "caps": "video/x-h265:\n  stream-format: byte-stream\n      alignment: au\n        profile: { (string)main, (string)main-10 }\n          width: [ 64, 8192 ]\n         height: [ 64, 8192 ]\n",
+                        "caps": "video/x-h265:\n          width: [ 64, 8192 ]\n         height: [ 64, 8192 ]\n  stream-format: byte-stream\n      alignment: au\n        profile: { (string)main, (string)main-10 }\n",
                         "direction": "src",
                         "presence": "always"
                     }
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "86670",
+                        "default": "0",
                         "max": "9223372036854775807",
                         "min": "-9223372036854775808",
                         "mutable": "null",
                         "type": "guint",
                         "writable": true
                     },
+                    "max-qp": {
+                        "blurb": "The maximum allowed QP applied to all rc-mode",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "51",
+                        "max": "51",
+                        "min": "0",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "min-qp": {
+                        "blurb": "The minimum allowed QP applied to all rc-mode",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "51",
+                        "min": "0",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
                     "qp": {
                         "blurb": "QP applied when rc-mode is \"qvbr\"",
                         "conditionally-available": true,
                         "type": "GstMFH265EncRCMode",
                         "writable": true
                     },
+                    "ref": {
+                        "blurb": "The number of reference frames",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "2",
+                        "max": "16",
+                        "min": "1",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
                     "vbv-buffer-size": {
                         "blurb": "VBV(HRD) Buffer Size in bytes (0 = MFT default)",
                         "conditionally-available": true,
                 },
                 "rank": "secondary"
             },
+            "mfmp3dec": {
+                "author": "Seungha Yang <seungha@centricular.com>",
+                "description": "Microsoft Media Foundation MP3 Decoder",
+                "hierarchy": [
+                    "GstMFMp3Dec",
+                    "GstMFAudioDecoder",
+                    "GstAudioDecoder",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Audio",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "audio/mpeg:\n    mpegversion: 1\n          layer: 3\n       channels: [ 1, 2 ]\n           rate: [ 8000, 48000 ]\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "audio/x-raw:\n         format: S16LE\n         layout: interleaved\n       channels: [ 1, 2 ]\n           rate: [ 8000, 48000 ]\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "secondary"
+            },
             "mfmp3enc": {
                 "author": "Seungha Yang <seungha@centricular.com>",
                 "description": "Microsoft Media Foundation MP3 Encoder",
                 "hierarchy": [
                     "GstMFMp3Enc",
-                    "GstMFAudioEnc",
+                    "GstMFAudioEncoder",
                     "GstAudioEncoder",
                     "GstElement",
                     "GstObject",
                     "GstPreset"
                 ],
                 "klass": "Codec/Encoder/Audio",
-                "long-name": "Media Foundation MP3 Encoder ACM Wrapper MFT",
                 "pad-templates": {
                     "sink": {
                         "caps": "audio/x-raw:\n         format: S16LE\n         layout: interleaved\n       channels: [ 1, 2 ]\n           rate: { (int)8000, (int)11025, (int)12000, (int)16000, (int)22050, (int)24000, (int)32000, (int)44100, (int)48000 }\n",
                     "GObject"
                 ],
                 "klass": "Source/Video/Hardware",
-                "long-name": "Media Foundation Video Source",
                 "pad-templates": {
                     "src": {
                         "caps": "video/x-raw:\n         format: { BGRx, BGRA, BGR, RGB15, RGB16, VUYA, YUY2, YVYU, UYVY, NV12, YV12, I420, P010, P016, v210, v216, GRAY16_LE }\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\nimage/jpeg:\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
                 "description": "Microsoft Media Foundation VP9 Encoder",
                 "hierarchy": [
                     "GstMFVP9Enc",
-                    "GstMFVideoEnc",
+                    "GstMFVideoEncoder",
                     "GstVideoEncoder",
                     "GstElement",
                     "GstObject",
                     "GstPreset"
                 ],
                 "klass": "Codec/Encoder/Video/Hardware",
-                "long-name": "Media Foundation Intel® Hardware VP9 Encoder MFT",
                 "pad-templates": {
                     "sink": {
-                        "caps": "video/x-raw:\n          width: [ 64, 8192 ]\n         height: [ 64, 8192 ]\n         format: { NV12 }\n\nvideo/x-raw(memory:D3D11Memory):\n          width: [ 64, 8192 ]\n         height: [ 64, 8192 ]\n         format: { NV12 }\n",
+                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: NV12\n          width: [ 64, 8192 ]\n         height: [ 64, 8192 ]\nvideo/x-raw:\n         format: NV12\n          width: [ 64, 8192 ]\n         height: [ 64, 8192 ]\n",
                         "direction": "sink",
                         "presence": "always"
                     },
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "86670",
+                        "default": "0",
                         "max": "9223372036854775807",
                         "min": "-9223372036854775808",
                         "mutable": "null",
         "filename": "gstmediafoundation",
         "license": "LGPL",
         "other-types": {
-            "GstMFAudioEnc": {
+            "GstMFAudioDecoder": {
+                "hierarchy": [
+                    "GstMFAudioDecoder",
+                    "GstAudioDecoder",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "kind": "object"
+            },
+            "GstMFAudioEncoder": {
                 "hierarchy": [
-                    "GstMFAudioEnc",
+                    "GstMFAudioEncoder",
                     "GstAudioEncoder",
                     "GstElement",
                     "GstObject",
                 ],
                 "kind": "object"
             },
+            "GstMFH264EncAdaptiveMode": {
+                "kind": "enum",
+                "values": [
+                    {
+                        "desc": "None",
+                        "name": "none",
+                        "value": "0"
+                    },
+                    {
+                        "desc": "Adaptively change the frame rate",
+                        "name": "framerate",
+                        "value": "1"
+                    }
+                ]
+            },
             "GstMFH264EncRCMode": {
                 "kind": "enum",
                 "values": [
                     }
                 ]
             },
-            "GstMFVideoEnc": {
+            "GstMFVideoEncoder": {
                 "hierarchy": [
-                    "GstMFVideoEnc",
+                    "GstMFVideoEncoder",
                     "GstVideoEncoder",
                     "GstElement",
                     "GstObject",
                 "long-name": "CUDA Colorspace converter",
                 "pad-templates": {
                     "sink": {
-                        "caps": "video/x-raw(memory:CUDAMemory):\n         format: { I420, YV12, NV12, NV21, P010_10LE, P016_LE, I420_10LE, Y444, Y444_16LE, BGRA, RGBA, RGBx, BGRx, ARGB, ABGR, RGB, BGR, BGR10A2_LE, RGB10A2_LE }\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "caps": "video/x-raw(memory:CUDAMemory):\n         format: { I420, YV12, NV12, NV21, P010_10LE, P016_LE, I420_10LE, Y444, Y444_16LE, BGRA, RGBA, RGBx, BGRx, ARGB, ABGR, RGB, BGR, BGR10A2_LE, RGB10A2_LE, Y42B, I422_10LE, I422_12LE }\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
                         "direction": "sink",
                         "presence": "always"
                     },
                     "src": {
-                        "caps": "video/x-raw(memory:CUDAMemory):\n         format: { I420, YV12, NV12, NV21, P010_10LE, P016_LE, I420_10LE, Y444, Y444_16LE, BGRA, RGBA, RGBx, BGRx, ARGB, ABGR, RGB, BGR, BGR10A2_LE, RGB10A2_LE }\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "caps": "video/x-raw(memory:CUDAMemory):\n         format: { I420, YV12, NV12, NV21, P010_10LE, P016_LE, I420_10LE, Y444, Y444_16LE, BGRA, RGBA, RGBx, BGRx, ARGB, ABGR, RGB, BGR, BGR10A2_LE, RGB10A2_LE, Y42B, I422_10LE, I422_12LE }\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
                         "direction": "src",
                         "presence": "always"
                     }
                 "description": "Downloads data from NVIDA GPU via CUDA APIs",
                 "hierarchy": [
                     "GstCudaDownload",
+                    "GstCudaMemoryCopy",
                     "GstCudaBaseTransform",
                     "GstBaseTransform",
                     "GstElement",
                 "long-name": "CUDA downloader",
                 "pad-templates": {
                     "sink": {
-                        "caps": "video/x-raw(memory:CUDAMemory):\nvideo/x-raw:\n",
+                        "caps": "video/x-raw(memory:CUDAMemory):\n         format: { I420, YV12, NV12, NV21, P010_10LE, P016_LE, I420_10LE, Y444, Y444_16LE, BGRA, RGBA, RGBx, BGRx, ARGB, ABGR, RGB, BGR, BGR10A2_LE, RGB10A2_LE, Y42B, I422_10LE, I422_12LE, YUY2, UYVY }\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\nvideo/x-raw:\n         format: { I420, YV12, NV12, NV21, P010_10LE, P016_LE, I420_10LE, Y444, Y444_16LE, BGRA, RGBA, RGBx, BGRx, ARGB, ABGR, RGB, BGR, BGR10A2_LE, RGB10A2_LE, Y42B, I422_10LE, I422_12LE, YUY2, UYVY }\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
                         "direction": "sink",
                         "presence": "always"
                     },
                     "src": {
-                        "caps": "video/x-raw:\n",
+                        "caps": "video/x-raw:\n         format: { I420, YV12, NV12, NV21, P010_10LE, P016_LE, I420_10LE, Y444, Y444_16LE, BGRA, RGBA, RGBx, BGRx, ARGB, ABGR, RGB, BGR, BGR10A2_LE, RGB10A2_LE, Y42B, I422_10LE, I422_12LE, YUY2, UYVY }\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:GLMemory):\n         format: { I420, YV12, NV12, NV21, P010_10LE, P016_LE, Y444, BGRA, RGBA, RGBx, BGRx, ARGB, ABGR, RGB, BGR, BGR10A2_LE, RGB10A2_LE, YUY2, UYVY }\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:D3D11Memory):\n         format: { I420, YV12, I420_10LE, Y444, Y444_16LE, BGRA, RGBA, BGRx, RGBx, Y42B, I422_10LE, I422_12LE }\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:CUDAMemory):\n         format: { I420, YV12, NV12, NV21, P010_10LE, P016_LE, I420_10LE, Y444, Y444_16LE, BGRA, RGBA, RGBx, BGRx, ARGB, ABGR, RGB, BGR, BGR10A2_LE, RGB10A2_LE, Y42B, I422_10LE, I422_12LE, YUY2, UYVY }\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
                         "direction": "src",
                         "presence": "always"
                     }
                 "long-name": "CUDA Video scaler",
                 "pad-templates": {
                     "sink": {
-                        "caps": "video/x-raw(memory:CUDAMemory):\n         format: { I420, YV12, NV12, NV21, P010_10LE, P016_LE, I420_10LE, Y444, Y444_16LE, BGRA, RGBA, RGBx, BGRx, ARGB, ABGR, RGB, BGR, BGR10A2_LE, RGB10A2_LE }\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "caps": "video/x-raw(memory:CUDAMemory):\n         format: { I420, YV12, NV12, NV21, P010_10LE, P016_LE, I420_10LE, Y444, Y444_16LE, BGRA, RGBA, RGBx, BGRx, ARGB, ABGR, RGB, BGR, BGR10A2_LE, RGB10A2_LE, Y42B, I422_10LE, I422_12LE }\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
                         "direction": "sink",
                         "presence": "always"
                     },
                     "src": {
-                        "caps": "video/x-raw(memory:CUDAMemory):\n         format: { I420, YV12, NV12, NV21, P010_10LE, P016_LE, I420_10LE, Y444, Y444_16LE, BGRA, RGBA, RGBx, BGRx, ARGB, ABGR, RGB, BGR, BGR10A2_LE, RGB10A2_LE }\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "caps": "video/x-raw(memory:CUDAMemory):\n         format: { I420, YV12, NV12, NV21, P010_10LE, P016_LE, I420_10LE, Y444, Y444_16LE, BGRA, RGBA, RGBx, BGRx, ARGB, ABGR, RGB, BGR, BGR10A2_LE, RGB10A2_LE, Y42B, I422_10LE, I422_12LE }\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
                         "direction": "src",
                         "presence": "always"
                     }
                 "description": "Uploads data into NVIDA GPU via CUDA APIs",
                 "hierarchy": [
                     "GstCudaUpload",
+                    "GstCudaMemoryCopy",
                     "GstCudaBaseTransform",
                     "GstBaseTransform",
                     "GstElement",
                 "long-name": "CUDA uploader",
                 "pad-templates": {
                     "sink": {
-                        "caps": "video/x-raw:\n\nvideo/x-raw(memory:CUDAMemory):\n",
+                        "caps": "video/x-raw:\n         format: { I420, YV12, NV12, NV21, P010_10LE, P016_LE, I420_10LE, Y444, Y444_16LE, BGRA, RGBA, RGBx, BGRx, ARGB, ABGR, RGB, BGR, BGR10A2_LE, RGB10A2_LE, Y42B, I422_10LE, I422_12LE, YUY2, UYVY }\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:GLMemory):\n         format: { I420, YV12, NV12, NV21, P010_10LE, P016_LE, Y444, BGRA, RGBA, RGBx, BGRx, ARGB, ABGR, RGB, BGR, BGR10A2_LE, RGB10A2_LE, YUY2, UYVY }\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:D3D11Memory):\n         format: { I420, YV12, I420_10LE, Y444, Y444_16LE, BGRA, RGBA, BGRx, RGBx, Y42B, I422_10LE, I422_12LE }\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n\nvideo/x-raw(memory:CUDAMemory):\n         format: { I420, YV12, NV12, NV21, P010_10LE, P016_LE, I420_10LE, Y444, Y444_16LE, BGRA, RGBA, RGBx, BGRx, ARGB, ABGR, RGB, BGR, BGR10A2_LE, RGB10A2_LE, Y42B, I422_10LE, I422_12LE, YUY2, UYVY }\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "video/x-raw(memory:CUDAMemory):\n         format: { I420, YV12, NV12, NV21, P010_10LE, P016_LE, I420_10LE, Y444, Y444_16LE, BGRA, RGBA, RGBx, BGRx, ARGB, ABGR, RGB, BGR, BGR10A2_LE, RGB10A2_LE, Y42B, I422_10LE, I422_12LE, YUY2, UYVY }\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\nvideo/x-raw:\n         format: { I420, YV12, NV12, NV21, P010_10LE, P016_LE, I420_10LE, Y444, Y444_16LE, BGRA, RGBA, RGBx, BGRx, ARGB, ABGR, RGB, BGR, BGR10A2_LE, RGB10A2_LE, Y42B, I422_10LE, I422_12LE, YUY2, UYVY }\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "none"
+            },
+            "nvautogpuh264enc": {
+                "author": "Seungha Yang <seungha@centricular.com>",
+                "description": "Encode H.264 video streams using NVCODEC API auto GPU select Mode",
+                "hierarchy": [
+                    "GstNvAutoGpuH264Enc",
+                    "GstNvEncoder",
+                    "GstVideoEncoder",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "interfaces": [
+                    "GstPreset"
+                ],
+                "klass": "Codec/Encoder/Video/Hardware",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "video/x-raw(memory:CUDAMemory):\n         format: { NV12, Y444 }\n          width: [ 160, 4096 ]\n         height: [ 64, 4096 ]\n interlace-mode: progressive\n\nvideo/x-raw(memory:D3D11Memory):\n         format: { NV12, Y444 }\n          width: [ 160, 4096 ]\n         height: [ 64, 4096 ]\n interlace-mode: progressive\nvideo/x-raw:\n         format: { NV12, Y444 }\n          width: [ 160, 4096 ]\n         height: [ 64, 4096 ]\n interlace-mode: progressive\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "video/x-h264:\n          width: [ 160, 4096 ]\n         height: [ 64, 4096 ]\n        profile: { (string)main, (string)high, (string)constrained-high, (string)constrained-baseline, (string)baseline, (string)high-4:4:4 }\n  stream-format: { (string)avc, (string)byte-stream }\n      alignment: au\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "properties": {
+                    "adapter-luid": {
+                        "blurb": "DXGI Adapter LUID (Locally Unique Identifier) to use",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "9223372036854775807",
+                        "min": "-9223372036854775808",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint64",
+                        "writable": true
+                    },
+                    "aq-strength": {
+                        "blurb": "Adaptive Quantization Strength when spatial-aq is enabled from 1 (low) to 15 (aggressive), (0 = autoselect)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "15",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "aud": {
+                        "blurb": "Use AU (Access Unit) delimiter",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "true",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "b-adapt": {
+                        "blurb": "Enable adaptive B-frame insert when lookahead is enabled",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "b-frames": {
+                        "blurb": "Number of B-frames between I and P",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "4",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "bitrate": {
+                        "blurb": "Bitrate in kbit/sec (0 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "2048000",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "cabac": {
+                        "blurb": "Enable CABAC entropy coding",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "true",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "const-quality": {
+                        "blurb": "Target Constant Quality level for VBR mode (0 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "51",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gdouble",
+                        "writable": true
+                    },
+                    "cuda-device-id": {
+                        "blurb": "CUDA device ID to use",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "2147483647",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "gop-size": {
+                        "blurb": "Number of frames between intra frames (-1 = infinite)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "30",
+                        "max": "2147483647",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "i-adapt": {
+                        "blurb": "Enable adaptive I-frame insert when lookahead is enabled",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "max-bitrate": {
+                        "blurb": "Maximum Bitrate in kbit/sec (ignored in CBR mode)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "2048000",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "max-qp-b": {
+                        "blurb": "Maximum QP value for B frame, (-1 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "max-qp-i": {
+                        "blurb": "Maximum QP value for I frame, (-1 = disabled)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "max-qp-p": {
+                        "blurb": "Maximum QP value for P frame, (-1 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "min-qp-b": {
+                        "blurb": "Minimum QP value for B frame, (-1 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "min-qp-i": {
+                        "blurb": "Minimum QP value for I frame, (-1 = disabled)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "min-qp-p": {
+                        "blurb": "Minimum QP value for P frame, (-1 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "nonref-p": {
+                        "blurb": "Automatic insertion of non-reference P-frames",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "preset": {
+                        "blurb": "Encoding Preset",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "default (0)",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "GstNvEncoderPreset",
+                        "writable": true
+                    },
+                    "qp-b": {
+                        "blurb": "Constant QP value for B frame (-1 = default)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "qp-i": {
+                        "blurb": "Constant QP value for I frame (-1 = default)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "qp-p": {
+                        "blurb": "Constant QP value for P frame (-1 = default)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "rate-control": {
+                        "blurb": "Rate Control Method",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "vbr (1)",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "GstNvEncoderRCMode",
+                        "writable": true
+                    },
+                    "rc-lookahead": {
+                        "blurb": "Number of frames for frame type lookahead",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "32",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "repeat-sequence-header": {
+                        "blurb": "Insert sequence headers (SPS/PPS) per IDR",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "spatial-aq": {
+                        "blurb": "Spatial Adaptive Quantization",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "strict-gop": {
+                        "blurb": "Minimize GOP-to-GOP rate fluctuations",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "temporal-aq": {
+                        "blurb": "Temporal Adaptive Quantization",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "vbv-buffer-size": {
+                        "blurb": "VBV(HRD) Buffer Size in kbits (0 = NVENC default)",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "-1",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "weighted-pred": {
+                        "blurb": "Enables Weighted Prediction",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "zero-reorder-delay": {
+                        "blurb": "Zero latency operation (i.e., num_reorder_frames = 0)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    }
+                },
+                "rank": "none"
+            },
+            "nvautogpuh265enc": {
+                "author": "Seungha Yang <seungha@centricular.com>",
+                "description": "Encode H.265 video streams using NVCODEC API auto GPU select Mode",
+                "hierarchy": [
+                    "GstNvAutoGpuH265Enc",
+                    "GstNvEncoder",
+                    "GstVideoEncoder",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "interfaces": [
+                    "GstPreset"
+                ],
+                "klass": "Codec/Encoder/Video/Hardware",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "video/x-raw(memory:CUDAMemory):\n         format: { NV12, P010_10LE, Y444, Y444_16LE }\n          width: [ 144, 8192 ]\n         height: [ 48, 8192 ]\n interlace-mode: progressive\n\nvideo/x-raw(memory:D3D11Memory):\n         format: { NV12, P010_10LE, Y444, Y444_16LE }\n          width: [ 144, 8192 ]\n         height: [ 48, 8192 ]\n interlace-mode: progressive\nvideo/x-raw:\n         format: { NV12, P010_10LE, Y444, Y444_16LE }\n          width: [ 144, 8192 ]\n         height: [ 48, 8192 ]\n interlace-mode: progressive\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "video/x-h265:\n          width: [ 144, 8192 ]\n         height: [ 48, 8192 ]\n        profile: { (string)main, (string)main-10, (string)main-444, (string)main-444-10 }\n  stream-format: { (string)hvc1, (string)hev1, (string)byte-stream }\n      alignment: au\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "properties": {
+                    "adapter-luid": {
+                        "blurb": "DXGI Adapter LUID (Locally Unique Identifier) to use",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "9223372036854775807",
+                        "min": "-9223372036854775808",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint64",
+                        "writable": true
+                    },
+                    "aq-strength": {
+                        "blurb": "Adaptive Quantization Strength when spatial-aq is enabled from 1 (low) to 15 (aggressive), (0 = autoselect)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "15",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "aud": {
+                        "blurb": "Use AU (Access Unit) delimiter",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "true",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "b-adapt": {
+                        "blurb": "Enable adaptive B-frame insert when lookahead is enabled",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "b-frames": {
+                        "blurb": "Number of B-frames between I and P",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "5",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "bitrate": {
+                        "blurb": "Bitrate in kbit/sec (0 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "2048000",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "const-quality": {
+                        "blurb": "Target Constant Quality level for VBR mode (0 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "51",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gdouble",
+                        "writable": true
+                    },
+                    "cuda-device-id": {
+                        "blurb": "CUDA device ID to use",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "2147483647",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "gop-size": {
+                        "blurb": "Number of frames between intra frames (-1 = infinite)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "30",
+                        "max": "2147483647",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "i-adapt": {
+                        "blurb": "Enable adaptive I-frame insert when lookahead is enabled",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "max-bitrate": {
+                        "blurb": "Maximum Bitrate in kbit/sec (ignored in CBR mode)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "2048000",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "max-qp-b": {
+                        "blurb": "Maximum QP value for B frame, (-1 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "max-qp-i": {
+                        "blurb": "Maximum QP value for I frame, (-1 = disabled)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "max-qp-p": {
+                        "blurb": "Maximum QP value for P frame, (-1 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "min-qp-b": {
+                        "blurb": "Minimum QP value for B frame, (-1 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "min-qp-i": {
+                        "blurb": "Minimum QP value for I frame, (-1 = disabled)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "min-qp-p": {
+                        "blurb": "Minimum QP value for P frame, (-1 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "nonref-p": {
+                        "blurb": "Automatic insertion of non-reference P-frames",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "preset": {
+                        "blurb": "Encoding Preset",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "default (0)",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "GstNvEncoderPreset",
+                        "writable": true
+                    },
+                    "qp-b": {
+                        "blurb": "Constant QP value for B frame (-1 = default)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "qp-i": {
+                        "blurb": "Constant QP value for I frame (-1 = default)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "qp-p": {
+                        "blurb": "Constant QP value for P frame (-1 = default)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "rate-control": {
+                        "blurb": "Rate Control Method",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "vbr (1)",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "GstNvEncoderRCMode",
+                        "writable": true
+                    },
+                    "rc-lookahead": {
+                        "blurb": "Number of frames for frame type lookahead",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "32",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "repeat-sequence-header": {
+                        "blurb": "Insert sequence headers (SPS/PPS) per IDR, ignored if negotiated stream-format is \"hvc1\"",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "spatial-aq": {
+                        "blurb": "Spatial Adaptive Quantization",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "strict-gop": {
+                        "blurb": "Minimize GOP-to-GOP rate fluctuations",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "temporal-aq": {
+                        "blurb": "Temporal Adaptive Quantization",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "vbv-buffer-size": {
+                        "blurb": "VBV(HRD) Buffer Size in kbits (0 = NVENC default)",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "-1",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "weighted-pred": {
+                        "blurb": "Enables Weighted Prediction",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "zero-reorder-delay": {
+                        "blurb": "Zero latency operation (i.e., num_reorder_frames = 0)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    }
+                },
+                "rank": "none"
+            },
+            "nvav1dec": {
+                "author": "Seungha Yang <seungha@centricular.com>",
+                "description": "NVIDIA AV1 video decoder",
+                "hierarchy": [
+                    "GstNvAV1Dec",
+                    "GstAV1Decoder",
+                    "GstVideoDecoder",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Video/Hardware",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "video/x-av1:\n      alignment: frame\n          width: [ 128, 8192 ]\n         height: [ 128, 8192 ]\n        profile: { (string)main }\n",
                         "direction": "sink",
                         "presence": "always"
                     },
                     "src": {
-                        "caps": "video/x-raw(memory:CUDAMemory):\n",
+                        "caps": "video/x-raw:\n          width: [ 128, 8192 ]\n         height: [ 128, 8192 ]\n      framerate: [ 0/1, 2147483647/1 ]\n         format: { NV12, P010_10LE }\n\nvideo/x-raw(memory:GLMemory):\n          width: [ 128, 8192 ]\n         height: [ 128, 8192 ]\n      framerate: [ 0/1, 2147483647/1 ]\n         format: { NV12, P010_10LE }\n\nvideo/x-raw(memory:CUDAMemory):\n          width: [ 128, 8192 ]\n         height: [ 128, 8192 ]\n      framerate: [ 0/1, 2147483647/1 ]\n         format: { NV12, P010_10LE }\n",
                         "direction": "src",
                         "presence": "always"
                     }
                 },
+                "properties": {
+                    "cuda-device-id": {
+                        "blurb": "Assigned CUDA device id",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "2147483647",
+                        "min": "0",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": false
+                    }
+                },
+                "rank": "primary"
+            },
+            "nvcudah264enc": {
+                "author": "Seungha Yang <seungha@centricular.com>",
+                "description": "Encode H.264 video streams using NVCODEC API CUDA Mode",
+                "hierarchy": [
+                    "GstNvCudaH264Enc",
+                    "GstNvEncoder",
+                    "GstVideoEncoder",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "interfaces": [
+                    "GstPreset"
+                ],
+                "klass": "Codec/Encoder/Video/Hardware",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "video/x-raw(memory:CUDAMemory):\n         format: { NV12, Y444 }\n          width: [ 160, 4096 ]\n         height: [ 64, 4096 ]\n interlace-mode: progressive\nvideo/x-raw:\n         format: { NV12, Y444 }\n          width: [ 160, 4096 ]\n         height: [ 64, 4096 ]\n interlace-mode: progressive\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "video/x-h264:\n          width: [ 160, 4096 ]\n         height: [ 64, 4096 ]\n        profile: { (string)main, (string)high, (string)constrained-baseline, (string)baseline, (string)high-4:4:4 }\n  stream-format: { (string)avc, (string)byte-stream }\n      alignment: au\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "properties": {
+                    "aq-strength": {
+                        "blurb": "Adaptive Quantization Strength when spatial-aq is enabled from 1 (low) to 15 (aggressive), (0 = autoselect)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "15",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "aud": {
+                        "blurb": "Use AU (Access Unit) delimiter",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "true",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "b-adapt": {
+                        "blurb": "Enable adaptive B-frame insert when lookahead is enabled",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "b-frames": {
+                        "blurb": "Number of B-frames between I and P",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "4",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "bitrate": {
+                        "blurb": "Bitrate in kbit/sec (0 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "2048000",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "cabac": {
+                        "blurb": "Enable CABAC entropy coding",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "true",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "const-quality": {
+                        "blurb": "Target Constant Quality level for VBR mode (0 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "51",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gdouble",
+                        "writable": true
+                    },
+                    "cuda-device-id": {
+                        "blurb": "CUDA device ID of associated GPU",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "2147483647",
+                        "min": "0",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": false
+                    },
+                    "gop-size": {
+                        "blurb": "Number of frames between intra frames (-1 = infinite)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "30",
+                        "max": "2147483647",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "i-adapt": {
+                        "blurb": "Enable adaptive I-frame insert when lookahead is enabled",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "max-bitrate": {
+                        "blurb": "Maximum Bitrate in kbit/sec (ignored in CBR mode)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "2048000",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "max-qp-b": {
+                        "blurb": "Maximum QP value for B frame, (-1 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "max-qp-i": {
+                        "blurb": "Maximum QP value for I frame, (-1 = disabled)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "max-qp-p": {
+                        "blurb": "Maximum QP value for P frame, (-1 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "min-qp-b": {
+                        "blurb": "Minimum QP value for B frame, (-1 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "min-qp-i": {
+                        "blurb": "Minimum QP value for I frame, (-1 = disabled)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "min-qp-p": {
+                        "blurb": "Minimum QP value for P frame, (-1 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "nonref-p": {
+                        "blurb": "Automatic insertion of non-reference P-frames",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "preset": {
+                        "blurb": "Encoding Preset",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "default (0)",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "GstNvEncoderPreset",
+                        "writable": true
+                    },
+                    "qp-b": {
+                        "blurb": "Constant QP value for B frame (-1 = default)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "qp-i": {
+                        "blurb": "Constant QP value for I frame (-1 = default)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "qp-p": {
+                        "blurb": "Constant QP value for P frame (-1 = default)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "rate-control": {
+                        "blurb": "Rate Control Method",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "vbr (1)",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "GstNvEncoderRCMode",
+                        "writable": true
+                    },
+                    "rc-lookahead": {
+                        "blurb": "Number of frames for frame type lookahead",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "32",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "repeat-sequence-header": {
+                        "blurb": "Insert sequence headers (SPS/PPS) per IDR",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "spatial-aq": {
+                        "blurb": "Spatial Adaptive Quantization",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "strict-gop": {
+                        "blurb": "Minimize GOP-to-GOP rate fluctuations",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "temporal-aq": {
+                        "blurb": "Temporal Adaptive Quantization",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "vbv-buffer-size": {
+                        "blurb": "VBV(HRD) Buffer Size in kbits (0 = NVENC default)",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "-1",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "weighted-pred": {
+                        "blurb": "Enables Weighted Prediction",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "zero-reorder-delay": {
+                        "blurb": "Zero latency operation (i.e., num_reorder_frames = 0)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    }
+                },
+                "rank": "none"
+            },
+            "nvcudah265enc": {
+                "author": "Seungha Yang <seungha@centricular.com>",
+                "description": "Encode H.265 video streams using NVCODEC API CUDA Mode",
+                "hierarchy": [
+                    "GstNvCudaH265Enc",
+                    "GstNvEncoder",
+                    "GstVideoEncoder",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "interfaces": [
+                    "GstPreset"
+                ],
+                "klass": "Codec/Encoder/Video/Hardware",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "video/x-raw(memory:CUDAMemory):\n         format: { NV12, P010_10LE, Y444, Y444_16LE }\n          width: [ 144, 8192 ]\n         height: [ 48, 8192 ]\n interlace-mode: progressive\nvideo/x-raw:\n         format: { NV12, P010_10LE, Y444, Y444_16LE }\n          width: [ 144, 8192 ]\n         height: [ 48, 8192 ]\n interlace-mode: progressive\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "video/x-h265:\n          width: [ 144, 8192 ]\n         height: [ 48, 8192 ]\n        profile: { (string)main, (string)main-10, (string)main-444, (string)main-444-10 }\n  stream-format: { (string)hvc1, (string)hev1, (string)byte-stream }\n      alignment: au\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "properties": {
+                    "aq-strength": {
+                        "blurb": "Adaptive Quantization Strength when spatial-aq is enabled from 1 (low) to 15 (aggressive), (0 = autoselect)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "15",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "aud": {
+                        "blurb": "Use AU (Access Unit) delimiter",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "true",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "b-adapt": {
+                        "blurb": "Enable adaptive B-frame insert when lookahead is enabled",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "b-frames": {
+                        "blurb": "Number of B-frames between I and P",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "5",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "bitrate": {
+                        "blurb": "Bitrate in kbit/sec (0 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "2048000",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "const-quality": {
+                        "blurb": "Target Constant Quality level for VBR mode (0 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "51",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gdouble",
+                        "writable": true
+                    },
+                    "cuda-device-id": {
+                        "blurb": "CUDA device ID of associated GPU",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "2147483647",
+                        "min": "0",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": false
+                    },
+                    "gop-size": {
+                        "blurb": "Number of frames between intra frames (-1 = infinite)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "30",
+                        "max": "2147483647",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "i-adapt": {
+                        "blurb": "Enable adaptive I-frame insert when lookahead is enabled",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "max-bitrate": {
+                        "blurb": "Maximum Bitrate in kbit/sec (ignored in CBR mode)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "2048000",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "max-qp-b": {
+                        "blurb": "Maximum QP value for B frame, (-1 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "max-qp-i": {
+                        "blurb": "Maximum QP value for I frame, (-1 = disabled)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "max-qp-p": {
+                        "blurb": "Maximum QP value for P frame, (-1 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "min-qp-b": {
+                        "blurb": "Minimum QP value for B frame, (-1 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "min-qp-i": {
+                        "blurb": "Minimum QP value for I frame, (-1 = disabled)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "min-qp-p": {
+                        "blurb": "Minimum QP value for P frame, (-1 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "nonref-p": {
+                        "blurb": "Automatic insertion of non-reference P-frames",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "preset": {
+                        "blurb": "Encoding Preset",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "default (0)",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "GstNvEncoderPreset",
+                        "writable": true
+                    },
+                    "qp-b": {
+                        "blurb": "Constant QP value for B frame (-1 = default)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "qp-i": {
+                        "blurb": "Constant QP value for I frame (-1 = default)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "qp-p": {
+                        "blurb": "Constant QP value for P frame (-1 = default)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "rate-control": {
+                        "blurb": "Rate Control Method",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "vbr (1)",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "GstNvEncoderRCMode",
+                        "writable": true
+                    },
+                    "rc-lookahead": {
+                        "blurb": "Number of frames for frame type lookahead",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "32",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "repeat-sequence-header": {
+                        "blurb": "Insert sequence headers (SPS/PPS) per IDR, ignored if negotiated stream-format is \"hvc1\"",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "spatial-aq": {
+                        "blurb": "Spatial Adaptive Quantization",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "strict-gop": {
+                        "blurb": "Minimize GOP-to-GOP rate fluctuations",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "temporal-aq": {
+                        "blurb": "Temporal Adaptive Quantization",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "vbv-buffer-size": {
+                        "blurb": "VBV(HRD) Buffer Size in kbits (0 = NVENC default)",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "-1",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "weighted-pred": {
+                        "blurb": "Enables Weighted Prediction",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "zero-reorder-delay": {
+                        "blurb": "Zero latency operation (i.e., num_reorder_frames = 0)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    }
+                },
+                "rank": "none"
+            },
+            "nvd3d11h264enc": {
+                "author": "Seungha Yang <seungha@centricular.com>",
+                "description": "Encode H.264 video streams using NVCODEC API Direct3D11 Mode",
+                "hierarchy": [
+                    "GstNvD3D11H264Enc",
+                    "GstNvEncoder",
+                    "GstVideoEncoder",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "interfaces": [
+                    "GstPreset"
+                ],
+                "klass": "Codec/Encoder/Video/Hardware",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { NV12, Y444 }\n          width: [ 160, 4096 ]\n         height: [ 64, 4096 ]\n interlace-mode: progressive\nvideo/x-raw:\n         format: { NV12, Y444 }\n          width: [ 160, 4096 ]\n         height: [ 64, 4096 ]\n interlace-mode: progressive\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "video/x-h264:\n          width: [ 160, 4096 ]\n         height: [ 64, 4096 ]\n        profile: { (string)main, (string)high, (string)constrained-high, (string)constrained-baseline, (string)baseline, (string)high-4:4:4 }\n  stream-format: { (string)avc, (string)byte-stream }\n      alignment: au\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "properties": {
+                    "adapter-luid": {
+                        "blurb": "DXGI Adapter LUID (Locally Unique Identifier) of associated GPU",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "9223372036854775807",
+                        "min": "-9223372036854775808",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "gint64",
+                        "writable": false
+                    },
+                    "aq-strength": {
+                        "blurb": "Adaptive Quantization Strength when spatial-aq is enabled from 1 (low) to 15 (aggressive), (0 = autoselect)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "15",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "aud": {
+                        "blurb": "Use AU (Access Unit) delimiter",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "true",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "b-adapt": {
+                        "blurb": "Enable adaptive B-frame insert when lookahead is enabled",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "b-frames": {
+                        "blurb": "Number of B-frames between I and P",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "4",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "bitrate": {
+                        "blurb": "Bitrate in kbit/sec (0 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "2048000",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "cabac": {
+                        "blurb": "Enable CABAC entropy coding",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "true",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "const-quality": {
+                        "blurb": "Target Constant Quality level for VBR mode (0 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "51",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gdouble",
+                        "writable": true
+                    },
+                    "gop-size": {
+                        "blurb": "Number of frames between intra frames (-1 = infinite)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "30",
+                        "max": "2147483647",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "i-adapt": {
+                        "blurb": "Enable adaptive I-frame insert when lookahead is enabled",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "max-bitrate": {
+                        "blurb": "Maximum Bitrate in kbit/sec (ignored in CBR mode)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "2048000",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "max-qp-b": {
+                        "blurb": "Maximum QP value for B frame, (-1 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "max-qp-i": {
+                        "blurb": "Maximum QP value for I frame, (-1 = disabled)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "max-qp-p": {
+                        "blurb": "Maximum QP value for P frame, (-1 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "min-qp-b": {
+                        "blurb": "Minimum QP value for B frame, (-1 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "min-qp-i": {
+                        "blurb": "Minimum QP value for I frame, (-1 = disabled)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "min-qp-p": {
+                        "blurb": "Minimum QP value for P frame, (-1 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "nonref-p": {
+                        "blurb": "Automatic insertion of non-reference P-frames",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "preset": {
+                        "blurb": "Encoding Preset",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "default (0)",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "GstNvEncoderPreset",
+                        "writable": true
+                    },
+                    "qp-b": {
+                        "blurb": "Constant QP value for B frame (-1 = default)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "qp-i": {
+                        "blurb": "Constant QP value for I frame (-1 = default)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "qp-p": {
+                        "blurb": "Constant QP value for P frame (-1 = default)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "rate-control": {
+                        "blurb": "Rate Control Method",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "vbr (1)",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "GstNvEncoderRCMode",
+                        "writable": true
+                    },
+                    "rc-lookahead": {
+                        "blurb": "Number of frames for frame type lookahead",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "32",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "repeat-sequence-header": {
+                        "blurb": "Insert sequence headers (SPS/PPS) per IDR",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "spatial-aq": {
+                        "blurb": "Spatial Adaptive Quantization",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "strict-gop": {
+                        "blurb": "Minimize GOP-to-GOP rate fluctuations",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "temporal-aq": {
+                        "blurb": "Temporal Adaptive Quantization",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "vbv-buffer-size": {
+                        "blurb": "VBV(HRD) Buffer Size in kbits (0 = NVENC default)",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "-1",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "weighted-pred": {
+                        "blurb": "Enables Weighted Prediction",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "zero-reorder-delay": {
+                        "blurb": "Zero latency operation (i.e., num_reorder_frames = 0)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    }
+                },
+                "rank": "none"
+            },
+            "nvd3d11h265enc": {
+                "author": "Seungha Yang <seungha@centricular.com>",
+                "description": "Encode H.265 video streams using NVCODEC API Direct3D11 Mode",
+                "hierarchy": [
+                    "GstNvD3D11H265Enc",
+                    "GstNvEncoder",
+                    "GstVideoEncoder",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "interfaces": [
+                    "GstPreset"
+                ],
+                "klass": "Codec/Encoder/Video/Hardware",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "video/x-raw(memory:D3D11Memory):\n         format: { NV12, P010_10LE, Y444, Y444_16LE }\n          width: [ 144, 8192 ]\n         height: [ 48, 8192 ]\n interlace-mode: progressive\nvideo/x-raw:\n         format: { NV12, P010_10LE, Y444, Y444_16LE }\n          width: [ 144, 8192 ]\n         height: [ 48, 8192 ]\n interlace-mode: progressive\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "video/x-h265:\n          width: [ 144, 8192 ]\n         height: [ 48, 8192 ]\n        profile: { (string)main, (string)main-10, (string)main-444, (string)main-444-10 }\n  stream-format: { (string)hvc1, (string)hev1, (string)byte-stream }\n      alignment: au\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "properties": {
+                    "adapter-luid": {
+                        "blurb": "DXGI Adapter LUID (Locally Unique Identifier) of associated GPU",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "9223372036854775807",
+                        "min": "-9223372036854775808",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "gint64",
+                        "writable": false
+                    },
+                    "aq-strength": {
+                        "blurb": "Adaptive Quantization Strength when spatial-aq is enabled from 1 (low) to 15 (aggressive), (0 = autoselect)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "15",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "aud": {
+                        "blurb": "Use AU (Access Unit) delimiter",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "true",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "b-adapt": {
+                        "blurb": "Enable adaptive B-frame insert when lookahead is enabled",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "b-frames": {
+                        "blurb": "Number of B-frames between I and P",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "5",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "bitrate": {
+                        "blurb": "Bitrate in kbit/sec (0 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "2048000",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "const-quality": {
+                        "blurb": "Target Constant Quality level for VBR mode (0 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "51",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gdouble",
+                        "writable": true
+                    },
+                    "gop-size": {
+                        "blurb": "Number of frames between intra frames (-1 = infinite)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "30",
+                        "max": "2147483647",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "i-adapt": {
+                        "blurb": "Enable adaptive I-frame insert when lookahead is enabled",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "max-bitrate": {
+                        "blurb": "Maximum Bitrate in kbit/sec (ignored in CBR mode)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "2048000",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "max-qp-b": {
+                        "blurb": "Maximum QP value for B frame, (-1 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "max-qp-i": {
+                        "blurb": "Maximum QP value for I frame, (-1 = disabled)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "max-qp-p": {
+                        "blurb": "Maximum QP value for P frame, (-1 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "min-qp-b": {
+                        "blurb": "Minimum QP value for B frame, (-1 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "min-qp-i": {
+                        "blurb": "Minimum QP value for I frame, (-1 = disabled)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "min-qp-p": {
+                        "blurb": "Minimum QP value for P frame, (-1 = automatic)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "nonref-p": {
+                        "blurb": "Automatic insertion of non-reference P-frames",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "preset": {
+                        "blurb": "Encoding Preset",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "default (0)",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "GstNvEncoderPreset",
+                        "writable": true
+                    },
+                    "qp-b": {
+                        "blurb": "Constant QP value for B frame (-1 = default)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "qp-i": {
+                        "blurb": "Constant QP value for I frame (-1 = default)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "qp-p": {
+                        "blurb": "Constant QP value for P frame (-1 = default)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "-1",
+                        "max": "51",
+                        "min": "-1",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gint",
+                        "writable": true
+                    },
+                    "rate-control": {
+                        "blurb": "Rate Control Method",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "vbr (1)",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "GstNvEncoderRCMode",
+                        "writable": true
+                    },
+                    "rc-lookahead": {
+                        "blurb": "Number of frames for frame type lookahead",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "32",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "repeat-sequence-header": {
+                        "blurb": "Insert sequence headers (SPS/PPS) per IDR, ignored if negotiated stream-format is \"hvc1\"",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "spatial-aq": {
+                        "blurb": "Spatial Adaptive Quantization",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "strict-gop": {
+                        "blurb": "Minimize GOP-to-GOP rate fluctuations",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "temporal-aq": {
+                        "blurb": "Temporal Adaptive Quantization",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "vbv-buffer-size": {
+                        "blurb": "VBV(HRD) Buffer Size in kbits (0 = NVENC default)",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "-1",
+                        "min": "0",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": true
+                    },
+                    "weighted-pred": {
+                        "blurb": "Enables Weighted Prediction",
+                        "conditionally-available": true,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "zero-reorder-delay": {
+                        "blurb": "Zero latency operation (i.e., num_reorder_frames = 0)",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "playing",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    }
+                },
                 "rank": "none"
             },
             "nvh264dec": {
             },
             "nvh264sldec": {
                 "author": "Seungha Yang <seungha@centricular.com>",
-                "description": "Nvidia H.264 video decoder",
+                "description": "NVIDIA H.264 video decoder",
                 "hierarchy": [
-                    "GstNvH264StatelessDec",
-                    "GstNvH264Dec",
+                    "GstNvH264SLDec",
                     "GstH264Decoder",
                     "GstVideoDecoder",
                     "GstElement",
                         "presence": "always"
                     }
                 },
+                "properties": {
+                    "cuda-device-id": {
+                        "blurb": "Assigned CUDA device id",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "2147483647",
+                        "min": "0",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": false
+                    }
+                },
                 "rank": "secondary"
             },
             "nvh265dec": {
             },
             "nvh265sldec": {
                 "author": "Seungha Yang <seungha@centricular.com>",
-                "description": "Nvidia H.265 video decoder",
+                "description": "NVIDIA H.265 video decoder",
                 "hierarchy": [
-                    "GstNvH265StatelessDec",
-                    "GstNvH265Dec",
+                    "GstNvH265SLDec",
                     "GstH265Decoder",
                     "GstVideoDecoder",
                     "GstElement",
                         "presence": "always"
                     }
                 },
+                "properties": {
+                    "cuda-device-id": {
+                        "blurb": "Assigned CUDA device id",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "2147483647",
+                        "min": "0",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": false
+                    }
+                },
                 "rank": "secondary"
             },
             "nvjpegdec": {
                 "author": "Seungha Yang <seungha@centricular.com>",
                 "description": "NVIDIA VP8 video decoder",
                 "hierarchy": [
-                    "GstNvVP8StatelessDec",
-                    "GstNvVp8Dec",
+                    "GstNvVp8SLDec",
                     "GstVp8Decoder",
                     "GstVideoDecoder",
                     "GstElement",
                         "presence": "always"
                     }
                 },
+                "properties": {
+                    "cuda-device-id": {
+                        "blurb": "Assigned CUDA device id",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "2147483647",
+                        "min": "0",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": false
+                    }
+                },
                 "rank": "secondary"
             },
             "nvvp9dec": {
                 "author": "Seungha Yang <seungha@centricular.com>",
                 "description": "NVIDIA VP9 video decoder",
                 "hierarchy": [
-                    "GstNvVP9StatelessDec",
-                    "GstNvVp9Dec",
+                    "GstNvVp9SLDec",
                     "GstVp9Decoder",
                     "GstVideoDecoder",
                     "GstElement",
                         "presence": "always"
                     }
                 },
+                "properties": {
+                    "cuda-device-id": {
+                        "blurb": "Assigned CUDA device id",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "2147483647",
+                        "min": "0",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": false
+                    }
+                },
                 "rank": "secondary"
             }
         },
                     }
                 }
             },
+            "GstCudaMemoryCopy": {
+                "hierarchy": [
+                    "GstCudaMemoryCopy",
+                    "GstCudaBaseTransform",
+                    "GstBaseTransform",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "kind": "object"
+            },
             "GstNvBaseEnc": {
                 "hierarchy": [
                     "GstNvBaseEnc",
                 ],
                 "kind": "object",
                 "properties": {
+                    "cuda-device-id": {
+                        "blurb": "Assigned CUDA device id",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": false,
+                        "controllable": false,
+                        "default": "0",
+                        "max": "2147483647",
+                        "min": "0",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "guint",
+                        "writable": false
+                    },
                     "max-display-delay": {
                         "blurb": "Improves pipelining of decode with display, 0 means no delay (auto = -1)",
                         "conditionally-available": false,
                 ],
                 "kind": "object"
             },
-            "GstNvH264Dec": {
+            "GstNvEncoder": {
                 "hierarchy": [
-                    "GstNvH264Dec",
-                    "GstH264Decoder",
-                    "GstVideoDecoder",
+                    "GstNvEncoder",
+                    "GstVideoEncoder",
                     "GstElement",
                     "GstObject",
                     "GInitiallyUnowned",
                     "GObject"
                 ],
-                "kind": "object"
-            },
-            "GstNvH265Dec": {
-                "hierarchy": [
-                    "GstNvH265Dec",
-                    "GstH265Decoder",
-                    "GstVideoDecoder",
-                    "GstElement",
-                    "GstObject",
-                    "GInitiallyUnowned",
-                    "GObject"
+                "interfaces": [
+                    "GstPreset"
                 ],
                 "kind": "object"
             },
+            "GstNvEncoderPreset": {
+                "kind": "enum",
+                "values": [
+                    {
+                        "desc": "Default",
+                        "name": "default",
+                        "value": "0"
+                    },
+                    {
+                        "desc": "High Performance",
+                        "name": "hp",
+                        "value": "1"
+                    },
+                    {
+                        "desc": "High Quality",
+                        "name": "hq",
+                        "value": "2"
+                    },
+                    {
+                        "desc": "Low Latency",
+                        "name": "low-latency",
+                        "value": "3"
+                    },
+                    {
+                        "desc": "Low Latency, High Quality",
+                        "name": "low-latency-hq",
+                        "value": "4"
+                    },
+                    {
+                        "desc": "Low Latency, High Performance",
+                        "name": "low-latency-hp",
+                        "value": "5"
+                    },
+                    {
+                        "desc": "Lossless",
+                        "name": "lossless",
+                        "value": "6"
+                    },
+                    {
+                        "desc": "Lossless, High Performance",
+                        "name": "lossless-hp",
+                        "value": "7"
+                    }
+                ]
+            },
+            "GstNvEncoderRCMode": {
+                "kind": "enum",
+                "values": [
+                    {
+                        "desc": "Constant Quantization",
+                        "name": "cqp",
+                        "value": "0"
+                    },
+                    {
+                        "desc": "Variable Bit Rate",
+                        "name": "vbr",
+                        "value": "1"
+                    },
+                    {
+                        "desc": "Constant Bit Rate",
+                        "name": "cbr",
+                        "value": "2"
+                    },
+                    {
+                        "desc": "Low-Delay CBR, High Quality",
+                        "name": "cbr-ld-hq",
+                        "value": "3"
+                    },
+                    {
+                        "desc": "CBR, High Quality (slower)",
+                        "name": "cbr-hq",
+                        "value": "4"
+                    },
+                    {
+                        "desc": "VBR, High Quality (slower)",
+                        "name": "vbr-hq",
+                        "value": "5"
+                    }
+                ]
+            },
             "GstNvPreset": {
                 "kind": "enum",
                 "values": [
                         "value": "7"
                     }
                 ]
-            },
-            "GstNvVp8Dec": {
-                "hierarchy": [
-                    "GstNvVp8Dec",
-                    "GstVp8Decoder",
-                    "GstVideoDecoder",
-                    "GstElement",
-                    "GstObject",
-                    "GInitiallyUnowned",
-                    "GObject"
-                ],
-                "kind": "object"
-            },
-            "GstNvVp9Dec": {
-                "hierarchy": [
-                    "GstNvVp9Dec",
-                    "GstVp9Decoder",
-                    "GstVideoDecoder",
-                    "GstElement",
-                    "GstObject",
-                    "GInitiallyUnowned",
-                    "GObject"
-                ],
-                "kind": "object"
             }
         },
         "package": "GStreamer Bad Plug-ins",
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "73102",
+                        "default": "0",
                         "max": "9223372036854775807",
                         "min": "-9223372036854775808",
                         "mutable": "null",
                         "construct": false,
                         "construct-only": false,
                         "controllable": false,
-                        "default": "73102",
+                        "default": "0",
                         "max": "9223372036854775807",
                         "min": "-9223372036854775808",
                         "mutable": "null",
         "tracers": {},
         "url": "Unknown package origin"
     },
+    "wic": {
+        "description": "Windows Imaging Component (WIC) plugin",
+        "elements": {
+            "wicjpegdec": {
+                "author": "Seungha Yang <seungha@centricular.com>",
+                "description": "Jpeg image decoder using Windows Imaging Component API",
+                "hierarchy": [
+                    "GstWicJpegDec",
+                    "GstWicDecoder",
+                    "GstVideoDecoder",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Image",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "image/jpeg:\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "video/x-raw:\n         format: { BGR, GRAY8, NV12, Y42B, Y444 }\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "secondary"
+            },
+            "wicpngdec": {
+                "author": "Seungha Yang <seungha@centricular.com>",
+                "description": "Png image decoder using Windows Imaging Component API",
+                "hierarchy": [
+                    "GstWicPngDec",
+                    "GstWicDecoder",
+                    "GstVideoDecoder",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "klass": "Codec/Decoder/Image",
+                "pad-templates": {
+                    "sink": {
+                        "caps": "image/png:\n",
+                        "direction": "sink",
+                        "presence": "always"
+                    },
+                    "src": {
+                        "caps": "video/x-raw:\n         format: { RGBA64_LE, BGRA, RGBA, BGR, RGB, GRAY8, GRAY16_BE }\n          width: [ 1, 2147483647 ]\n         height: [ 1, 2147483647 ]\n      framerate: [ 0/1, 2147483647/1 ]\n",
+                        "direction": "src",
+                        "presence": "always"
+                    }
+                },
+                "rank": "secondary"
+            }
+        },
+        "filename": "gstwic",
+        "license": "LGPL",
+        "other-types": {
+            "GstWicDecoder": {
+                "hierarchy": [
+                    "GstWicDecoder",
+                    "GstVideoDecoder",
+                    "GstElement",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "kind": "object"
+            }
+        },
+        "package": "GStreamer Bad Plug-ins",
+        "source": "gst-plugins-bad",
+        "tracers": {},
+        "url": "Unknown package origin"
+    },
     "wildmidi": {
         "description": "WildMidi-based MIDI playback plugin",
         "elements": {