[gstreamermm] Start working on 1.8 version, update defs, required version



commit 76cf16a10ecb9305f74c2f939df091f08cf34832
Author: Marcin Kolny <marcin kolny gmail com>
Date:   Mon Apr 11 21:29:41 2016 +0200

    Start working on 1.8 version, update defs, required version

 configure.ac                          |    4 +-
 gst-plugins-bad/src/gst_docs.xml      | 2615 +++++++++++++++++++++++++---
 gst-plugins-bad/src/gst_enums.defs    |  334 ++++-
 gst-plugins-bad/src/gst_methods.defs  | 1701 +++++++++++++------
 gstreamer/src/gst_docs.xml            | 2203 +++++++++++++++++++++++-
 gstreamer/src/gst_enums.defs          |  518 ++++---
 gstreamer/src/gst_enums.defs.patch    |  134 +--
 gstreamer/src/gst_methods.defs        | 1124 ++++++++++++-
 gstreamer/src/gst_methods.defs.patch  |    2 -
 gstreamer/src/gst_signals.defs        | 3055 +++++++++++++++++----------------
 gstreamer/src/gst_signals.defs.patch  |   11 +-
 tools/gen_scripts/generate_methods.sh |    3 -
 tools/m4/plugingen_gstreamermm.m4     |    1 +
 13 files changed, 9030 insertions(+), 2675 deletions(-)
---
diff --git a/configure.ac b/configure.ac
index a1d3529..e897cf7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -13,9 +13,9 @@
 ## You should have received a copy of the GNU Lesser General Public License
 ## along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-m4_define([GSTMM_VERSION], [1.5.2])
+m4_define([GSTMM_VERSION], [1.8.0])
 
-AC_INIT([gstreamermm], [1.5.2],
+AC_INIT([gstreamermm], [1.8.0],
         [http://bugzilla.gnome.org/enter_bug.cgi?product=gstreamermm],
         [gstreamermm], [http://www.gtkmm.org/])
 AC_PREREQ([2.59])
diff --git a/gst-plugins-bad/src/gst_docs.xml b/gst-plugins-bad/src/gst_docs.xml
index 94b0804..d4cda26 100644
--- a/gst-plugins-bad/src/gst_docs.xml
+++ b/gst-plugins-bad/src/gst_docs.xml
@@ -16,6 +16,78 @@ Capture mode to use.
 </parameters>
 </enum>
 
+<enum name="GstGLAPI">
+<description>
+
+</description>
+<parameters>
+<parameter name="GST_GL_API_NONE">
+<parameter_description> no API
+</parameter_description>
+</parameter>
+<parameter name="GST_GL_API_OPENGL">
+<parameter_description> Desktop OpenGL up to and including 3.1.  The
+compatibility profile when the OpenGL version is &gt;= 3.2
+</parameter_description>
+</parameter>
+<parameter name="GST_GL_API_OPENGL3">
+<parameter_description> Desktop OpenGL &gt;= 3.2 core profile
+</parameter_description>
+</parameter>
+<parameter name="GST_GL_API_GLES1">
+<parameter_description> OpenGL ES 1.x
+</parameter_description>
+</parameter>
+<parameter name="GST_GL_API_GLES2">
+<parameter_description> OpenGL ES 2.x and 3.x
+</parameter_description>
+</parameter>
+<parameter name="GST_GL_API_ANY">
+<parameter_description> Any OpenGL API
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
+<enum name="GstGLBaseMemoryError">
+<description>
+
+</description>
+<parameters>
+<parameter name="GST_GL_BASE_MEMORY_ERROR_FAILED">
+<parameter_description> generic faliure
+</parameter_description>
+</parameter>
+<parameter name="GST_GL_BASE_MEMORY_ERROR_OLD_LIBS">
+<parameter_description> the implementation is too old and doesn't
+implement enough features
+</parameter_description>
+</parameter>
+<parameter name="GST_GL_BASE_MEMORY_ERROR_RESOURCE_UNAVAILABLE">
+<parameter_description> a resource could not be found
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
+<enum name="GstGLBaseMemoryTransfer">
+<description>
+
+</description>
+<parameters>
+<parameter name="GST_GL_BASE_MEMORY_TRANSFER_NEED_DOWNLOAD">
+<parameter_description> the texture needs downloading
+to the data pointer
+</parameter_description>
+</parameter>
+<parameter name="GST_GL_BASE_MEMORY_TRANSFER_NEED_UPLOAD">
+<parameter_description>   the data pointer needs uploading
+to the texture
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
 <signal name="GstGLDisplay::create-context">
 <description>
 Overrides the @GstGLContext creation mechanism.
@@ -38,6 +110,107 @@ display's object lock held.
 </return>
 </signal>
 
+<enum name="GstGLDisplayType">
+<description>
+
+</description>
+<parameters>
+<parameter name="GST_GL_DISPLAY_TYPE_NONE">
+<parameter_description> no display type
+</parameter_description>
+</parameter>
+<parameter name="GST_GL_DISPLAY_TYPE_X11">
+<parameter_description> X11 display
+</parameter_description>
+</parameter>
+<parameter name="GST_GL_DISPLAY_TYPE_WAYLAND">
+<parameter_description> Wayland display
+</parameter_description>
+</parameter>
+<parameter name="GST_GL_DISPLAY_TYPE_COCOA">
+<parameter_description> Cocoa display
+</parameter_description>
+</parameter>
+<parameter name="GST_GL_DISPLAY_TYPE_WIN32">
+<parameter_description> Win32 display
+</parameter_description>
+</parameter>
+<parameter name="GST_GL_DISPLAY_TYPE_DISPMANX">
+<parameter_description> Dispmanx display
+</parameter_description>
+</parameter>
+<parameter name="GST_GL_DISPLAY_TYPE_EGL">
+<parameter_description> EGL display
+</parameter_description>
+</parameter>
+<parameter name="GST_GL_DISPLAY_TYPE_ANY">
+<parameter_description> any display type
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
+<enum name="GstGLPlatform">
+<description>
+
+</description>
+<parameters>
+<parameter name="GST_GL_PLATFORM_NONE">
+<parameter_description> no platform
+</parameter_description>
+</parameter>
+<parameter name="GST_GL_PLATFORM_EGL">
+<parameter_description> the EGL platform used primarily with the X11, wayland
+and android window systems as well as on embedded Linux
+</parameter_description>
+</parameter>
+<parameter name="GST_GL_PLATFORM_GLX">
+<parameter_description> the GLX platform used primarily with the X11 window system
+</parameter_description>
+</parameter>
+<parameter name="GST_GL_PLATFORM_WGL">
+<parameter_description> the WGL platform used primarily on Windows
+</parameter_description>
+</parameter>
+<parameter name="GST_GL_PLATFORM_CGL">
+<parameter_description> the CGL platform used primarily on OS X
+</parameter_description>
+</parameter>
+<parameter name="GST_GL_PLATFORM_EAGL">
+<parameter_description> the EAGL platform used primarily on iOS
+</parameter_description>
+</parameter>
+<parameter name="GST_GL_PLATFORM_ANY">
+<parameter_description> any OpenGL platform
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
+<enum name="GstGLTextureTarget">
+<description>
+
+</description>
+<parameters>
+<parameter name="GST_GL_TEXTURE_TARGET_NONE">
+<parameter_description> no texture target
+</parameter_description>
+</parameter>
+<parameter name="GST_GL_TEXTURE_TARGET_2D">
+<parameter_description> 2D texture target
+</parameter_description>
+</parameter>
+<parameter name="GST_GL_TEXTURE_TARGET_RECTANGLE">
+<parameter_description> rectangle texture target
+</parameter_description>
+</parameter>
+<parameter name="GST_GL_TEXTURE_TARGET_EXTERNAL_OES">
+<parameter_description> external oes texture target
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
 <enum name="GstGLUploadReturn">
 <description>
 
@@ -1943,7 +2116,6 @@ message.
 <description>
 Noise Reduction features of a photography capture or filter element.
 
-
 </description>
 <parameters>
 <parameter name="GST_PHOTOGRAPHY_NOISE_REDUCTION_BAYER">
@@ -2153,6 +2325,185 @@ The result of parsing VP8 data.
 </parameters>
 </enum>
 
+<enum name="GstVp9BitDepth">
+<description>
+Bit depths of encoded frames
+
+
+</description>
+<parameters>
+<parameter name="GST_VP9_BIT_DEPTH_8">
+<parameter_description> Bit depth is 8
+ GST_VP9_BIT_DEPTH_10 Bit depth is 10
+</parameter_description>
+</parameter>
+<parameter name="GST_VP9_BIT_DEPTH_12">
+<parameter_description>Bit depth is 12
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
+<enum name="GstVp9ColorRange">
+<description>
+Possible color value ranges
+
+
+</description>
+<parameters>
+<parameter name="GST_VP9_CR_LIMITED">
+<parameter_description> Y range is [16-235], UV range is [16-240]
+</parameter_description>
+</parameter>
+<parameter name="GST_VP9_CR_FULL">
+<parameter_description> Full range for Y,U and V [0-255]
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
+<enum name="GstVp9ColorSpace">
+<description>
+Supported ColorSpace standards
+
+
+</description>
+<parameters>
+<parameter name="GST_VP9_CS_UNKNOWN">
+<parameter_description> Unknown color space
+</parameter_description>
+</parameter>
+<parameter name="GST_VP9_CS_BT_601">
+<parameter_description> BT.601
+</parameter_description>
+</parameter>
+<parameter name="GST_VP9_CS_BT_709">
+<parameter_description> BT.709
+</parameter_description>
+</parameter>
+<parameter name="GST_VP9_CS_SMPTE_170">
+<parameter_description> SMPTE.170
+</parameter_description>
+</parameter>
+<parameter name="GST_VP9_CS_SMPTE_240">
+<parameter_description> SMPTE.240
+</parameter_description>
+</parameter>
+<parameter name="GST_VP9_CS_BT_2020">
+<parameter_description> BT.2020
+</parameter_description>
+</parameter>
+<parameter name="GST_VP9_CS_RESERVED">
+<parameter_description> Reserved
+</parameter_description>
+</parameter>
+<parameter name="GST_VP9_CS_SRGB">
+<parameter_description> sRGB
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
+<enum name="GstVp9FrameType">
+<description>
+VP9 frame types
+
+
+</description>
+<parameters>
+<parameter name="GST_VP9_KEY_FRAME">
+<parameter_description> Key frame, only have intra blocks
+</parameter_description>
+</parameter>
+<parameter name="GST_VP9_INTER_FRAME">
+<parameter_description> Inter frame, both intra and inter blocks
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
+<enum name="GstVp9InterpolationFilter">
+<description>
+Interpolation Filters Types
+
+
+</description>
+<parameters>
+<parameter name="GST_VP9_INTERPOLATION_FILTER_EIGHTTAP">
+<parameter_description> EightTap interpolation filter
+</parameter_description>
+</parameter>
+<parameter name="GST_VP9_INTERPOLATION_FILTER_EIGHTTAP_SMOOTH">
+<parameter_description> Smooth interpolation filter
+</parameter_description>
+</parameter>
+<parameter name="GST_VP9_INTERPOLATION_FILTER_EIGHTTAP_SHARP">
+<parameter_description> Shart interpolation filter
+</parameter_description>
+</parameter>
+<parameter name="GST_VP9_INTERPOLATION_FILTER_BILINEAR">
+<parameter_description> Bilinear interpolation filter
+</parameter_description>
+</parameter>
+<parameter name="GST_VP9_INTERPOLATION_FILTER_SWITCHABLE">
+<parameter_description> Selectable interpolation filter
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
+<enum name="GstVp9ParseResult">
+<description>
+Result type of any parsing function.
+
+
+</description>
+<parameters>
+<parameter name="GST_VP9_PARSER_OK">
+<parameter_description> The parsing went well
+</parameter_description>
+</parameter>
+<parameter name="GST_VP9_PARSER_BROKEN_DATA">
+<parameter_description> The data to parse is broken
+</parameter_description>
+</parameter>
+<parameter name="GST_VP9_PARSER_NO_PACKET_ERROR">
+<parameter_description> An error occured during the parsing
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
+<enum name="GstVp9RefFrameType">
+<description>
+Reference Frame types
+
+
+</description>
+<parameters>
+<parameter name="GST_VP9_REF_FRAME_INTRA">
+<parameter_description> Intra reference frame
+</parameter_description>
+</parameter>
+<parameter name="GST_VP9_REF_FRAME_LAST">
+<parameter_description> Last Reference frame
+</parameter_description>
+</parameter>
+<parameter name="GST_VP9_REF_FRAME_GOLDEN">
+<parameter_description> Golden Reference frame
+</parameter_description>
+</parameter>
+<parameter name="GST_VP9_REF_FRAME_ALTREF">
+<parameter_description> Alternate Reference frame
+</parameter_description>
+</parameter>
+<parameter name="GST_VP9_REF_FRAME_MAX">
+<parameter_description>
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
 <function name="advance_period">
 <description>
 Advances the manifest to the next period. New streams should be created
@@ -2279,6 +2630,25 @@ between successive manifest updates
 </return>
 </function>
 
+<function name="get_period_start_time">
+<description>
+Gets the start time of the current period. Timestamps are resetting to 0
+after each period but we have to maintain a continuous stream and running
+time so need to know the start time of the current period.
+
+Return: a #GstClockTime representing the start time of the currently
+selected period.
+
+</description>
+<parameters>
+<parameter name="demux">
+<parameter_description> #GstAdaptiveDemux
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="get_presentation_offset">
 <description>
 Gets the delay to apply to @stream.
@@ -2553,6 +2923,38 @@ Provided structures must either be %NULL or GSlice-allocated.
 </return>
 </function>
 
+<function name="gst_buffer_pool_config_get_gl_allocation_params">
+<description>
+
+</description>
+<parameters>
+<parameter name="config">
+<parameter_description> a buffer pool config
+</parameter_description>
+</parameter>
+</parameters>
+<return> the currently set #GstGLAllocationParams or %NULL
+</return>
+</function>
+
+<function name="gst_buffer_pool_config_set_gl_allocation_params">
+<description>
+Sets @params on @config
+
+</description>
+<parameters>
+<parameter name="config">
+<parameter_description> a buffer pool config
+</parameter_description>
+</parameter>
+<parameter name="params">
+<parameter_description> a #GstGLAllocationParams
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gst_camerabin_create_preview_pipeline">
 <description>
 Creates a new previewing pipeline that can receive buffers
@@ -2702,6 +3104,135 @@ Extracts the #GstMpegtsSection contained in the @event #GstEvent
 </return>
 </function>
 
+<function name="gst_gl_allocation_params_copy">
+<description>
+
+</description>
+<parameters>
+<parameter name="src">
+<parameter_description> the #GstGLAllocationParams to initialize
+</parameter_description>
+</parameter>
+</parameters>
+<return> a copy of the #GstGLAllocationParams specified by @src or %NULL on
+failure
+
+</return>
+</function>
+
+<function name="gst_gl_allocation_params_copy_data">
+<description>
+Copies the dynamically allocated data from @src to @dest.  Direct subclasses
+should call this function in their own overriden copy function.
+
+
+</description>
+<parameters>
+<parameter name="src">
+<parameter_description> the source #GstGLAllocationParams
+</parameter_description>
+</parameter>
+<parameter name="dest">
+<parameter_description> the destination #GstGLAllocationParams
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gst_gl_allocation_params_free">
+<description>
+Frees the #GstGLAllocationParams and all associated data.
+
+
+</description>
+<parameters>
+<parameter name="params">
+<parameter_description> the #GstGLAllocationParams to initialize
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gst_gl_allocation_params_free_data">
+<description>
+Frees the dynamically allocated data in @params.  Direct subclasses
+should call this function in their own overriden free function.
+
+
+</description>
+<parameters>
+<parameter name="params">
+<parameter_description> the source #GstGLAllocationParams
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gst_gl_allocation_params_init">
+<description>
+ notify will be called once for each allocated memory using these @params
+when freeing the memory.
+
+
+</description>
+<parameters>
+<parameter name="params">
+<parameter_description> the #GstGLAllocationParams to initialize
+</parameter_description>
+</parameter>
+<parameter name="struct_size">
+<parameter_description> the struct size of the implementation
+</parameter_description>
+</parameter>
+<parameter name="alloc_flags">
+<parameter_description> some alloc flags
+</parameter_description>
+</parameter>
+<parameter name="copy">
+<parameter_description> a copy function
+</parameter_description>
+</parameter>
+<parameter name="free">
+<parameter_description> a free function
+</parameter_description>
+</parameter>
+<parameter name="context">
+<parameter_description> a #GstGLContext
+</parameter_description>
+</parameter>
+<parameter name="alloc_size">
+<parameter_description> the number of bytes to allocate.
+</parameter_description>
+</parameter>
+<parameter name="alloc_params">
+<parameter_description> a #GstAllocationParams to apply
+</parameter_description>
+</parameter>
+<parameter name="wrapped_data">
+<parameter_description> a sysmem data pointer to initialize the allocation with
+</parameter_description>
+</parameter>
+<parameter name="gl_handle">
+<parameter_description> a GL handle to initialize the allocation with
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data to call @notify with
+</parameter_description>
+</parameter>
+<parameter name="notify">
+<parameter_description> a #GDestroyNotify
+</parameter_description>
+</parameter>
+</parameters>
+<return> whether the paramaters could be initialized
+
+</return>
+</function>
+
 <function name="gst_gl_api_from_string">
 <description>
 
@@ -2730,10 +3261,377 @@ Extracts the #GstMpegtsSection contained in the @event #GstEvent
 </return>
 </function>
 
-<function name="gst_gl_base_buffer_init_once">
+<function name="gst_gl_async_debug_free">
+<description>
+Frees @ad
+
+
+</description>
+<parameters>
+<parameter name="ad">
+<parameter_description> a #GstGLAsyncDebug
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gst_gl_async_debug_freeze">
+<description>
+freeze the debug output.  While frozen, any call to
+gst_gl_async_debug_output_log_msg() will not output any messages but
+subsequent calls to gst_gl_async_debug_store_log_msg() will overwrite previous
+messages.
+
+
+</description>
+<parameters>
+<parameter name="ad">
+<parameter_description> a #GstGLAsyncDebug
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gst_gl_async_debug_init">
+<description>
+Initialize @ad.  Intended for use with #GstGLAsyncDebug's that are embedded
+in other structs.
+
+
+</description>
+<parameters>
+<parameter name="ad">
+<parameter_description> a #GstGLAsyncDebug
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gst_gl_async_debug_new">
+<description>
+Free with gst_gl_async_debug_free()
+
+
+</description>
+<parameters>
+<parameter name="ad">
+<parameter_description> a #GstGLAsyncDebug
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GstGLAsyncDebug
+
+</return>
+</function>
+
+<function name="gst_gl_async_debug_output_log_msg">
+<description>
+Outputs a previously stored debug message.
+
+</description>
+<parameters>
+<parameter name="ad">
+<parameter_description> the #GstGLAsyncDebug to store the message in
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gst_gl_async_debug_store_log_msg">
+<description>
+Stores a debug message for later output by gst_gl_async_debug_output_log_msg()
+
+
+</description>
+<parameters>
+<parameter name="ad">
+<parameter_description> the #GstGLAsyncDebug to store the message in
+</parameter_description>
+</parameter>
+<parameter name="cat">
+<parameter_description> the #GstDebugCategory to output the message in
+</parameter_description>
+</parameter>
+<parameter name="level">
+<parameter_description> the #GstLevel
+</parameter_description>
+</parameter>
+<parameter name="file">
+<parameter_description> the file where the debug message originates from
+</parameter_description>
+</parameter>
+<parameter name="function">
+<parameter_description> the function where the debug message originates from
+</parameter_description>
+</parameter>
+<parameter name="line">
+<parameter_description> the line in @file where the debug message originates from
+</parameter_description>
+</parameter>
+<parameter name="object">
+<parameter_description> a #GObject to associate with the debug message
+</parameter_description>
+</parameter>
+<parameter name="format">
+<parameter_description> a printf style format string
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> the list of arguments for @format
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gst_gl_async_debug_store_log_msg_valist">
+<description>
+Stores a debug message for later output by gst_gl_async_debug_output_log_msg()
+
+
+</description>
+<parameters>
+<parameter name="ad">
+<parameter_description> the #GstGLAsyncDebug to store the message in
+</parameter_description>
+</parameter>
+<parameter name="cat">
+<parameter_description> the #GstDebugCategory to output the message in
+</parameter_description>
+</parameter>
+<parameter name="level">
+<parameter_description> the #GstLevel
+</parameter_description>
+</parameter>
+<parameter name="file">
+<parameter_description> the file where the debug message originates from
+</parameter_description>
+</parameter>
+<parameter name="function">
+<parameter_description> the function where the debug message originates from
+</parameter_description>
+</parameter>
+<parameter name="line">
+<parameter_description> the line in @file where the debug message originates from
+</parameter_description>
+</parameter>
+<parameter name="object">
+<parameter_description> a #GObject to associate with the debug message
+</parameter_description>
+</parameter>
+<parameter name="format">
+<parameter_description> a printf style format string
+</parameter_description>
+</parameter>
+<parameter name="varargs">
+<parameter_description> the list of arguments for @format
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gst_gl_async_debug_thaw">
+<description>
+unfreeze the debug output.  See gst_gl_async_debug_freeze() for what freezing means
+
+
+</description>
+<parameters>
+<parameter name="ad">
+<parameter_description> a #GstGLAsyncDebug
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gst_gl_async_debug_unset">
+<description>
+Unset any dynamically allocated data.  Intended for use with
+#GstGLAsyncDebug's that are embedded in other structs.
+
+</description>
+<parameters>
+<parameter name="ad">
+<parameter_description> a #GstGLAsyncDebug
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gst_gl_base_memory_alloc">
+<description>
+
+</description>
+<parameters>
+<parameter name="allocator">
+<parameter_description> a #GstGLBaseMemoryAllocator
+</parameter_description>
+</parameter>
+<parameter name="params">
+<parameter_description> the #GstGLAllocationParams to allocate the memory with
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GstGLBaseMemory from @allocator with the requested @params.
+
+</return>
+</function>
+
+<function name="gst_gl_base_memory_init">
+<description>
+Initializes @mem with the required parameters
+
+
+</description>
+<parameters>
+<parameter name="mem">
+<parameter_description> the #GstGLBaseMemory to initialize
+</parameter_description>
+</parameter>
+<parameter name="allocator">
+<parameter_description> the #GstAllocator to initialize with
+</parameter_description>
+</parameter>
+<parameter name="parent">
+<parameter_description> the parent #GstMemory to initialize with
+</parameter_description>
+</parameter>
+<parameter name="context">
+<parameter_description> the #GstGLContext to initialize with
+</parameter_description>
+</parameter>
+<parameter name="params">
+<parameter_description> the @GstAllocationParams to initialize with
+</parameter_description>
+</parameter>
+<parameter name="size">
+<parameter_description> the number of bytes to be allocated
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data to call @notify with
+</parameter_description>
+</parameter>
+<parameter name="notify">
+<parameter_description> a #GDestroyNotify
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gst_gl_base_memory_init_once">
+<description>
+Initializes the GL Base Memory allocator. It is safe to call this function
+multiple times.  This must be called before any other GstGLBaseMemory operation.
+
+
+</description>
+<parameters>
+</parameters>
+<return></return>
+</function>
+
+<function name="gst_gl_base_memory_memcpy">
+<description>
+
+</description>
+<parameters>
+<parameter name="src">
+<parameter_description> the source #GstGLBaseMemory
+</parameter_description>
+</parameter>
+<parameter name="dest">
+<parameter_description> the destination #GstGLBaseMemory
+</parameter_description>
+</parameter>
+<parameter name="offset">
+<parameter_description> the offset to start at
+</parameter_description>
+</parameter>
+<parameter name="size">
+<parameter_description> the number of bytes to copy
+</parameter_description>
+</parameter>
+</parameters>
+<return> whether the copy suceeded.
+
+</return>
+</function>
+
+<function name="gst_gl_buffer_allocation_params_new">
+<description>
+
+</description>
+<parameters>
+<parameter name="context">
+<parameter_description> a #GstGLContext
+</parameter_description>
+</parameter>
+<parameter name="alloc_size">
+<parameter_description> the size in bytes to allocate
+</parameter_description>
+</parameter>
+<parameter name="alloc_params">
+<parameter_description> the #GstAllocationParams for @tex_id
+</parameter_description>
+</parameter>
+<parameter name="gl_target">
+<parameter_description> the OpenGL target to allocate
+</parameter_description>
+</parameter>
+<parameter name="gl_usage">
+<parameter_description> the OpenGL usage hint to allocate with
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GstGLBufferAllocationParams for allocating OpenGL buffer
+objects
+
+</return>
+</function>
+
+<function name="gst_gl_buffer_copy_buffer_sub_data">
+<description>
+Copies @src into @dest using glCopyBufferSubData().
+
+
+</description>
+<parameters>
+<parameter name="src">
+<parameter_description> the source #GstGLBuffer
+</parameter_description>
+</parameter>
+<parameter name="dest">
+<parameter_description> the destination #GstGLBuffer
+</parameter_description>
+</parameter>
+<parameter name="offset">
+<parameter_description> the offset to copy from @src
+</parameter_description>
+</parameter>
+<parameter name="size">
+<parameter_description> the size to copy from @src
+</parameter_description>
+</parameter>
+</parameters>
+<return> whether the copy operation succeeded
+
+</return>
+</function>
+
+<function name="gst_gl_buffer_init_once">
 <description>
 Initializes the GL Buffer allocator. It is safe to call this function
-multiple times.  This must be called before any other GstGLBaseBuffer operation.
+multiple times.  This must be called before any other #GstGLBuffer operation.
+
 
 </description>
 <parameters>
@@ -2927,6 +3825,22 @@ version.
 </return>
 </function>
 
+<function name="gst_gl_context_clear_shader">
+<description>
+Clear's the currently set shader from the GL state machine.
+
+Note: must be called in the GL thread.
+
+</description>
+<parameters>
+<parameter name="context">
+<parameter_description> a #GstGLContext
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gst_gl_context_create">
 <description>
 Creates an OpenGL context in the current thread with the specified
@@ -3016,7 +3930,7 @@ returned.
 </description>
 <parameters>
 <parameter name="platform">
-<parameter_description> the #GstGLPlatform to retreive the API for
+<parameter_description> the #GstGLPlatform to retrieve the API for
 </parameter_description>
 </parameter>
 <parameter name="major">
@@ -3198,6 +4112,21 @@ be retrieved using this method.
 </return>
 </function>
 
+<function name="gst_gl_context_is_shared">
+<description>
+
+</description>
+<parameters>
+<parameter name="context">
+<parameter_description> a #GstGLContext
+</parameter_description>
+</parameter>
+</parameters>
+<return> Whether the #GstGLContext has been shared with another #GstGLContext
+
+</return>
+</function>
+
 <function name="gst_gl_context_new">
 <description>
 Create a new #GstGLContext with the specified @display
@@ -3244,6 +4173,25 @@ Wraps an existing OpenGL context into a #GstGLContext.
 </return>
 </function>
 
+<function name="gst_gl_context_set_shared_with">
+<description>
+Will internally set @context as shared with @share
+
+
+</description>
+<parameters>
+<parameter name="context">
+<parameter_description> a wrapped #GstGLContext
+</parameter_description>
+</parameter>
+<parameter name="share">
+<parameter_description> another #GstGLContext
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gst_gl_context_set_window">
 <description>
 Set's the current window on @context to @window.  The window can only be
@@ -3526,99 +4474,6 @@ Creates a new display connection from a X11 Display.
 </return>
 </function>
 
-<function name="gst_gl_download_new">
-<description>
-
-</description>
-<parameters>
-<parameter name="context">
-<parameter_description> a #GstGLContext
-</parameter_description>
-</parameter>
-</parameters>
-<return> a new #GstGLDownload object
-</return>
-</function>
-
-<function name="gst_gl_download_perform">
-<description>
-Downloads the contents of @inbuf into @outbuf.
-
-The output buffer contents must match the #GstVideoFormat passed
-to gst_gl_download_set_format(), and the input buffer must
-contain #GstGLMemory memory items.
-
-This method supports downloading multiple views.
-
-
-</description>
-<parameters>
-<parameter name="download">
-<parameter_description> a #GstGLDownload
-</parameter_description>
-</parameter>
-<parameter name="inbuf">
-<parameter_description> a #GstBuffer input buffer
-</parameter_description>
-</parameter>
-<parameter name="outbuf">
-<parameter_description> a #GstBuffer output buffer
-</parameter_description>
-</parameter>
-</parameters>
-<return> whether the download was successful
-</return>
-</function>
-
-<function name="gst_gl_download_perform_with_data">
-<description>
-Downloads @texture_id into @data. @data size and format is specified by
-the #GstVideoFormat passed to gst_gl_download_set_format()
-
-This method can only be used for download a single view.
-
-
-</description>
-<parameters>
-<parameter name="download">
-<parameter_description> a #GstGLDownload
-</parameter_description>
-</parameter>
-<parameter name="texture_id">
-<parameter_description> the texture id to download
-</parameter_description>
-</parameter>
-<parameter name="texture_target">
-<parameter_description> the GL texture target
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> where the downloaded data should go
-</parameter_description>
-</parameter>
-</parameters>
-<return> whether the download was successful
-</return>
-</function>
-
-<function name="gst_gl_download_set_format">
-<description>
-Initializes @download with the information required for download.
-
-</description>
-<parameters>
-<parameter name="download">
-<parameter_description> a #GstGLDownload
-</parameter_description>
-</parameter>
-<parameter name="out_info">
-<parameter_description> a #GstVideoInfo
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
 <function name="gst_gl_filter_draw_texture">
 <description>
 Draws @texture into the OpenGL scene at the specified @width and @height.
@@ -3740,40 +4595,298 @@ and the output size
 <return></return>
 </function>
 
-<function name="gst_gl_memory_alloc">
+<function name="gst_gl_format_from_gl_texture_type">
+<description>
+
+</description>
+<parameters>
+<parameter name="tex_format">
+<parameter_description> a #GstVideoGLTextureType
+</parameter_description>
+</parameter>
+</parameters>
+<return> the OpenGL format specified by @tex_format
+</return>
+</function>
+
+<function name="gst_gl_format_type_n_bytes">
+<description>
+
+</description>
+<parameters>
+<parameter name="format">
+<parameter_description> the OpenGL format, %GL_RGBA, %GL_LUMINANCE, etc
+</parameter_description>
+</parameter>
+<parameter name="type">
+<parameter_description> the OpenGL type, %GL_UNSIGNED_BYTE, %GL_FLOAT, etc
+</parameter_description>
+</parameter>
+</parameters>
+<return> the number of bytes the specified @format, @type combination takes
+per pixel
+</return>
+</function>
+
+<function name="gst_gl_insert_debug_marker">
 <description>
-Allocated a new #GstGlMemory.
+Inserts a marker into a GL debug stream.  Requires the 'gldebugmarker'
+debug category to be at least %GST_LEVEL_FIXME.
+
+
+</description>
+<parameters>
+<parameter name="context">
+<parameter_description> a #GstGLContext
+</parameter_description>
+</parameter>
+<parameter name="format">
+<parameter_description> a printf-style format string
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> arguments form @format
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
 
+<function name="gst_gl_memory_allocator_get_default">
+<description>
 
 </description>
 <parameters>
 <parameter name="context">
-<parameter_description>a #GstGLContext
+<parameter_description> a #GstGLContext
+</parameter_description>
+</parameter>
+</parameters>
+<return> the default #GstGLMemoryAllocator supported by @context
+
+</return>
+</function>
+
+<function name="gst_gl_memory_copy_into">
+<description>
+Copies @gl_mem into the texture specfified by @tex_id.  The format of @tex_id
+is specified by @tex_type, @width and @height.
+
+
+</description>
+<parameters>
+<parameter name="gl_mem">
+<parameter_description>a #GstGLMemory
+</parameter_description>
+</parameter>
+<parameter name="tex_id">
+<parameter_description>OpenGL texture id
+</parameter_description>
+</parameter>
+<parameter name="target">
+<parameter_description> the #GstGLTextureTarget
+</parameter_description>
+</parameter>
+<parameter name="tex_type">
+<parameter_description> the #GstVideoGLTextureType
+</parameter_description>
+</parameter>
+<parameter name="width">
+<parameter_description> width of @tex_id
+</parameter_description>
+</parameter>
+<parameter name="height">
+<parameter_description> height of @tex_id
+</parameter_description>
+</parameter>
+</parameters>
+<return> Whether the copy suceeded
+
+</return>
+</function>
+
+<function name="gst_gl_memory_copy_texiamge">
+<description>
+Copies the texture in #GstGLMemory into the texture specified by @tex_id,
+ out_target, @out_tex_type, @out_width and @out_height.
+
+
+</description>
+<parameters>
+<parameter name="gl_mem">
+<parameter_description> the source #GstGLMemory
+</parameter_description>
+</parameter>
+<parameter name="tex_id">
+<parameter_description> the destination texture id
+</parameter_description>
+</parameter>
+<parameter name="out_target">
+<parameter_description> the destination #GstGLTextureTarget
+</parameter_description>
+</parameter>
+<parameter name="out_tex_type">
+<parameter_description> the destination #GstVideoGLTextureType
+</parameter_description>
+</parameter>
+<parameter name="out_width">
+<parameter_description> the destination width
+</parameter_description>
+</parameter>
+<parameter name="out_height">
+<parameter_description> the destination height
+</parameter_description>
+</parameter>
+</parameters>
+<return> whether the copy succeeded.
+
+</return>
+</function>
+
+<function name="gst_gl_memory_get_texture_height">
+<description>
+
+</description>
+<parameters>
+<parameter name="gl_mem">
+<parameter_description> a #GstGLMemory
+</parameter_description>
+</parameter>
+</parameters>
+<return> the texture height of @gl_mem
+
+</return>
+</function>
+
+<function name="gst_gl_memory_get_texture_id">
+<description>
+
+</description>
+<parameters>
+<parameter name="gl_mem">
+<parameter_description> a #GstGLMemory
+</parameter_description>
+</parameter>
+</parameters>
+<return> the OpenGL texture handle of @gl_mem
+
+</return>
+</function>
+
+<function name="gst_gl_memory_get_texture_target">
+<description>
+
+</description>
+<parameters>
+<parameter name="gl_mem">
+<parameter_description> a #GstGLMemory
+</parameter_description>
+</parameter>
+</parameters>
+<return> the #GstGLTextureTarget of @gl_mem
+
+</return>
+</function>
+
+<function name="gst_gl_memory_get_texture_type">
+<description>
+
+</description>
+<parameters>
+<parameter name="gl_mem">
+<parameter_description> a #GstGLMemory
+</parameter_description>
+</parameter>
+</parameters>
+<return> the #GstVideoGLTextureType of @gl_mem
+
+</return>
+</function>
+
+<function name="gst_gl_memory_get_texture_width">
+<description>
+
+</description>
+<parameters>
+<parameter name="gl_mem">
+<parameter_description> a #GstGLMemory
+</parameter_description>
+</parameter>
+</parameters>
+<return> the texture width of @gl_mem
+
+</return>
+</function>
+
+<function name="gst_gl_memory_init">
+<description>
+Initializes @mem with the required parameters.  @info is assumed to have
+already have been modified with gst_video_info_align().
+
+
+</description>
+<parameters>
+<parameter name="mem">
+<parameter_description> the #GstGLBaseMemory to initialize
+</parameter_description>
+</parameter>
+<parameter name="allocator">
+<parameter_description> the #GstAllocator to initialize with
+</parameter_description>
+</parameter>
+<parameter name="parent">
+<parameter_description> the parent #GstMemory to initialize with
+</parameter_description>
+</parameter>
+<parameter name="context">
+<parameter_description> the #GstGLContext to initialize with
+</parameter_description>
+</parameter>
+<parameter name="target">
+<parameter_description> the #GstGLTextureTarget for this #GstGLMemory
 </parameter_description>
 </parameter>
 <parameter name="params">
-<parameter_description> a #GstAllocationParams
+<parameter_description> the @GstAllocationParams to initialize with
 </parameter_description>
 </parameter>
 <parameter name="info">
-<parameter_description> the #GstVideoInfo of the memory
+<parameter_description> the #GstVideoInfo for this #GstGLMemory
 </parameter_description>
 </parameter>
 <parameter name="plane">
-<parameter_description> the plane this memory will represent
+<parameter_description> the plane number (starting from 0) for this #GstGLMemory
 </parameter_description>
 </parameter>
 <parameter name="valign">
-<parameter_description> the #GstVideoAlignment applied to @info
+<parameter_description> optional #GstVideoAlignment parameters
+</parameter_description>
+</parameter>
+<parameter name="notify">
+<parameter_description> a #GDestroyNotify
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data to call @notify with
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GstMemory object with a GL texture specified by @vinfo
-from @context
-</return>
+<return></return>
+</function>
+
+<function name="gst_gl_memory_init_once">
+<description>
+Initializes the GL Base Texture allocator. It is safe to call this function
+multiple times.  This must be called before any other GstGLMemory operation.
+
+
+</description>
+<parameters>
+</parameters>
+<return></return>
 </function>
 
-<function name="gst_gl_memory_copy_into_texture">
+<function name="gst_gl_memory_pbo_copy_into_texture">
 <description>
 Copies @gl_mem into the texture specfified by @tex_id.  The format of @tex_id
 is specified by @tex_type, @width and @height.
@@ -3793,15 +4906,19 @@ mappings between texture formats.
 </description>
 <parameters>
 <parameter name="gl_mem">
-<parameter_description>a #GstGLMemory
+<parameter_description>a #GstGLMemoryPBO
 </parameter_description>
 </parameter>
 <parameter name="tex_id">
-<parameter_description>OpenGL texture id
+<parameter_description> the destination texture id
+</parameter_description>
+</parameter>
+<parameter name="target">
+<parameter_description> the destination #GstGLTextureTarget
 </parameter_description>
 </parameter>
 <parameter name="tex_type">
-<parameter_description> a #GstVideoGLTextureType
+<parameter_description> the destination #GstVideoGLTextureType
 </parameter_description>
 </parameter>
 <parameter name="width">
@@ -3822,13 +4939,29 @@ mappings between texture formats.
 </parameter>
 </parameters>
 <return> Whether the copy suceeded
+
 </return>
 </function>
 
-<function name="gst_gl_memory_init">
+<function name="gst_gl_memory_pbo_download_transfer">
+<description>
+Transfer the texture data from the PBO into the texture if necessary.
+
+
+</description>
+<parameters>
+<parameter name="gl_mem">
+<parameter_description> a #GstGLMemoryPBO
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gst_gl_memory_pbo_init">
 <description>
 Initializes the GL Memory allocator. It is safe to call this function
-multiple times.  This must be called before any other GstGLMemory operation.
+multiple times.  This must be called before any other GstGLMemoryPBO operation.
 
 </description>
 <parameters>
@@ -3836,126 +4969,278 @@ multiple times.  This must be called before any other GstGLMemory operation.
 <return></return>
 </function>
 
-<function name="gst_gl_memory_setup_buffer">
+<function name="gst_gl_memory_read_pixels">
 <description>
-Adds the required #GstGLMemory&lt;!--  --&gt;s with the correct configuration to
- buffer based on @info. This version handles padding through @valign.
+Reads the texture in #GstGLMemory into @read_pointer if no buffer is bound
+to %GL_PIXEL_PACK_BUFFER.  Otherwise @read_pointer is the byte offset into
+the currently bound %GL_PIXEL_PACK_BUFFER buffer to store the result of
+glReadPixels.  See the OpenGL specification for glReadPixels for more
+details.
 
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GstGLContext
+<parameter name="gl_mem">
+<parameter_description> a #GstGLMemory
+</parameter_description>
+</parameter>
+<parameter name="read_pointer">
+<parameter_description> the data pointer to pass to glReadPixels
+</parameter_description>
+</parameter>
+</parameters>
+<return> whether theread operation succeeded
+
+</return>
+</function>
+
+<function name="gst_gl_memory_setup_buffer">
+<description>
+
+</description>
+<parameters>
+<parameter name="allocator">
+<parameter_description> the @GstGLMemoryAllocator to allocate from
+</parameter_description>
+</parameter>
+<parameter name="buffer">
+<parameter_description> a #GstBuffer to setup
 </parameter_description>
 </parameter>
 <parameter name="params">
-<parameter_description> a #GstAllocationParams
+<parameter_description> the #GstGLVideoAllocationParams to allocate with
 </parameter_description>
 </parameter>
-<parameter name="info">
-<parameter_description> a #GstVideoInfo
+</parameters>
+<return> whether the buffer was correctly setup
+
+</return>
+</function>
+
+<function name="gst_gl_memory_texsubimage">
+<description>
+See gst_gl_memory_read_pixels() for what @read_pointer signifies.
+
+
+</description>
+<parameters>
+<parameter name="gl_mem">
+<parameter_description> a #GstGLMemory
 </parameter_description>
 </parameter>
-<parameter name="valign">
-<parameter_description> the #GstVideoAlignment applied to @info
+<parameter name="read_pointer">
+<parameter_description> the data pointer to pass to glTexSubImage
 </parameter_description>
 </parameter>
-<parameter name="buffer">
-<parameter_description> a #GstBuffer
+</parameters>
+<return></return>
+</function>
+
+<function name="gst_gl_platform_from_string">
+<description>
+
+</description>
+<parameters>
+<parameter name="platform_s">
+<parameter_description> a space seperated string of OpenGL platformss
+</parameter_description>
+</parameter>
+</parameters>
+<return> The #GstGLPlatform represented by @platform_s
+</return>
+</function>
+
+<function name="gst_gl_platform_to_string">
+<description>
+
+</description>
+<parameters>
+<parameter name="platform">
+<parameter_description> a #GstGLPlatform to stringify
 </parameter_description>
 </parameter>
 </parameters>
-<return> whether the memory's were sucessfully added.
+<return> A space seperated string of the OpenGL platforms enabled in @platform
 </return>
 </function>
 
-<function name="gst_gl_memory_setup_wrapped">
+<function name="gst_gl_shader_attach">
 <description>
-Wraps per plane data pointer in @data into the corresponding entry in
- textures based on @info and padding from @valign. Note that the @notify
-will be called as many time as there is planes.
+Attaches @stage to @shader.  @stage must have been successfully compiled
+with gst_glsl_stage_compile().
+
+Note: must be called in the GL thread
 
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description> a #GstGLContext
+<parameter name="shader">
+<parameter_description> a #GstGLShader
 </parameter_description>
 </parameter>
-<parameter name="info">
-<parameter_description> a #GstVideoInfo
+<parameter name="stage">
+<parameter_description> a #GstGLSLStage to attach
 </parameter_description>
 </parameter>
-<parameter name="valign">
-<parameter_description> a #GstVideoInfo
+</parameters>
+<return> whether @stage could be attached to @shader
+
+</return>
+</function>
+
+<function name="gst_gl_shader_attach_unlocked">
+<description>
+Attaches @stage to @shader.  @stage must have been successfully compiled
+with gst_glsl_stage_compile().
+
+Note: must be called in the GL thread
+
+
+</description>
+<parameters>
+<parameter name="shader">
+<parameter_description> a #GstGLShader
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> a list of per plane data pointers
+<parameter name="stage">
+<parameter_description> a #GstGLSLStage to attach
 </parameter_description>
 </parameter>
-<parameter name="textures">
-<parameter_description> a list of #GstGLMemory
+</parameters>
+<return> whether @stage could be attached to @shader
+
+</return>
+</function>
+
+<function name="gst_gl_shader_compile_attach_stage">
+<description>
+Compiles @stage and attaches it to @shader.
+
+Note: must be called in the GL thread
+
+
+</description>
+<parameters>
+<parameter name="shader">
+<parameter_description> a #GstGLShader
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data for the destroy function
+<parameter name="stage">
+<parameter_description> a #GstGLSLStage to attach
 </parameter_description>
 </parameter>
-<parameter name="notify">
-<parameter_description> A function called each time a memory is freed
+<parameter name="error">
+<parameter_description> a #GError
 </parameter_description>
 </parameter>
 </parameters>
-<return> whether the memory's were sucessfully created.
+<return> whether @stage could be compiled and attached to @shader
+
 </return>
 </function>
 
-<function name="gst_gl_memory_wrapped">
+<function name="gst_gl_shader_detach">
 <description>
-Wrapped @data into a #GstGLMemory. This version will account for padding
-added to the allocation and expressed through @valign.
+Detaches @stage from @shader.  @stage must have been successfully attached
+to @shader with gst_gl_shader_attach() or gst_gl_shader_attach_unlocked().
+
+Note: must be called in the GL thread
 
 
 </description>
 <parameters>
-<parameter name="context">
-<parameter_description>a #GstGLContext
+<parameter name="shader">
+<parameter_description> a #GstGLShader
 </parameter_description>
 </parameter>
-<parameter name="info">
-<parameter_description> the #GstVideoInfo of the memory and data
+<parameter name="stage">
+<parameter_description> a #GstGLSLStage to attach
 </parameter_description>
 </parameter>
-<parameter name="plane">
-<parameter_description> the plane this memory will represent
+</parameters>
+<return></return>
+</function>
+
+<function name="gst_gl_shader_detach_unlocked">
+<description>
+Detaches @stage from @shader.  @stage must have been successfully attached
+to @shader with gst_gl_shader_attach() or gst_gl_shader_attach_unlocked().
+
+Note: must be called in the GL thread
+
+
+</description>
+<parameters>
+<parameter name="shader">
+<parameter_description> a #GstGLShader
 </parameter_description>
 </parameter>
-<parameter name="valign">
-<parameter_description> the #GstVideoAlignment applied to @info
+<parameter name="stage">
+<parameter_description> a #GstGLSLStage to attach
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> the data to wrap
+</parameters>
+<return></return>
+</function>
+
+<function name="gst_gl_shader_get_program_handle">
+<description>
+
+</description>
+<parameters>
+<parameter name="shader">
+<parameter_description> a #GstGLShader
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> data called with for @notify
+</parameters>
+<return> the GL program handle for this shader
+
+</return>
+</function>
+
+<function name="gst_gl_shader_is_linked">
+<description>
+Note: must be called in the GL thread
+
+
+</description>
+<parameters>
+<parameter name="shader">
+<parameter_description> a #GstGLShader
 </parameter_description>
 </parameter>
-<parameter name="notify">
-<parameter_description> function called with @user_data when @data needs to be freed
+</parameters>
+<return> whether @shader has been successfully linked
+
+</return>
+</function>
+
+<function name="gst_gl_shader_link">
+<description>
+Links the current list of #GstGLSLStage's in @shader.
+
+Note: must be called in the GL thread
+
+
+</description>
+<parameters>
+<parameter name="shader">
+<parameter_description> a #GstGLShader
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GstGLMemory object with a GL texture specified by @v_info
-from @context and contents specified by @data
+<return> whether @shader could be linked together.
+
 </return>
 </function>
 
-<function name="gst_gl_memory_wrapped_texture">
+<function name="gst_gl_shader_new">
 <description>
-Wraps a texture handle into a #GstGLMemory.
+Note: must be called in the GL thread
 
 
 </description>
@@ -3964,121 +5249,222 @@ Wraps a texture handle into a #GstGLMemory.
 <parameter_description> a #GstGLContext
 </parameter_description>
 </parameter>
-<parameter name="texture_id">
-<parameter_description> the GL texture handle
+</parameters>
+<return> a new empty @shader
+</return>
+</function>
+
+<function name="gst_gl_shader_new_default">
+<description>
+Note: must be called in the GL thread
+
+
+</description>
+<parameters>
+<parameter name="context">
+<parameter_description> a #GstGLContext
 </parameter_description>
 </parameter>
-<parameter name="texture_target">
-<parameter_description> the GL texture target
+<parameter name="error">
+<parameter_description> a #GError that is filled on failure
 </parameter_description>
 </parameter>
-<parameter name="info">
-<parameter_description> the #GstVideoInfo of the memory
+</parameters>
+<return> a default @shader or %NULL on failure
+
+</return>
+</function>
+
+<function name="gst_gl_shader_new_link_with_stages">
+<description>
+Each stage will attempt to be compiled and attached to @shader.  Then
+the shader will be linked. On error, %NULL will be returned and @error will
+contain the details of the error.
+
+Note: must be called in the GL thread
+
+
+</description>
+<parameters>
+<parameter name="context">
+<parameter_description> a #GstGLContext
 </parameter_description>
 </parameter>
-<parameter name="plane">
-<parameter_description> The plane this memory will represent
+<parameter name="error">
+<parameter_description> a #GError
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data
+<parameter name="Varargs">
+<parameter_description> a NULL terminated list of #GstGLSLStage's
 </parameter_description>
 </parameter>
-<parameter name="notify">
-<parameter_description> Destroy callback for the user data
+</parameters>
+<return> a new @shader with the specified stages.
+
+</return>
+</function>
+
+<function name="gst_gl_shader_new_with_stages">
+<description>
+Each stage will attempt to be compiled and attached to @shader.  On error,
+%NULL will be returned and @error will contain the details of the error.
+
+Note: must be called in the GL thread
+
+
+</description>
+<parameters>
+<parameter name="context">
+<parameter_description> a #GstGLContext
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> a NULL terminated list of #GstGLSLStage's
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated #GstGLMemory
+<return> a new @shader with the specified stages.
+
 </return>
 </function>
 
-<function name="gst_gl_platform_from_string">
+<function name="gst_gl_shader_release">
 <description>
+Releases the shader and stages.
+
+Note: must be called in the GL thread
+
 
 </description>
 <parameters>
-<parameter name="platform_s">
-<parameter_description> a space seperated string of OpenGL platformss
+<parameter name="shader">
+<parameter_description> a #GstGLShader
 </parameter_description>
 </parameter>
 </parameters>
-<return> The #GstGLPlatform represented by @platform_s
-</return>
+<return></return>
 </function>
 
-<function name="gst_gl_platform_to_string">
+<function name="gst_gl_shader_release_unlocked">
 <description>
+Releases the shader and stages.
+
+Note: must be called in the GL thread
+
 
 </description>
 <parameters>
-<parameter name="api">
-<parameter_description> a #GstGLPlatform to stringify
+<parameter name="shader">
+<parameter_description> a #GstGLShader
 </parameter_description>
 </parameter>
 </parameters>
-<return> A space seperated string of the OpenGL platforms enabled in @api
-</return>
+<return></return>
 </function>
 
-<function name="gst_gl_upload_get_caps">
+<function name="gst_gl_shader_use">
 <description>
+Mark's @shader as being used for the next GL draw command.
+
+Note: must be called in the GL thread and @shader must have been linked.
 
 </description>
 <parameters>
-<parameter name="upload">
-<parameter_description> a #GstGLUpload
+<parameter name="shader">
+<parameter_description> a #GstGLShader
 </parameter_description>
 </parameter>
-<parameter name="in_caps">
-<parameter_description> the input #GstCaps
+</parameters>
+<return></return>
+</function>
+
+<function name="gst_gl_sized_gl_format_from_gl_format_type">
+<description>
+
+</description>
+<parameters>
+<parameter name="context">
+<parameter_description> a #GstGLContext
 </parameter_description>
 </parameter>
-<parameter name="out_caps">
-<parameter_description> the output #GstCaps
+<parameter name="format">
+<parameter_description> an OpenGL format, %GL_RGBA, %GL_LUMINANCE, etc
+</parameter_description>
+</parameter>
+<parameter name="type">
+<parameter_description> an OpenGL type, %GL_UNSIGNED_BYTE, %GL_FLOAT, etc
 </parameter_description>
 </parameter>
 </parameters>
-<return> The #GstCaps set by gst_gl_upload_set_caps()
+<return> the sized internal format specified by @format and @type that can
+be used in @context
 </return>
 </function>
 
-<function name="gst_gl_upload_meta_add_to_buffer">
+<function name="gst_gl_texture_target_from_gl">
 <description>
-Adds a #GstVideoGLTextureUploadMeta on @buffer using @upload
 
+</description>
+<parameters>
+<parameter name="target">
+<parameter_description> an OpenGL texture binding target
+</parameter_description>
+</parameter>
+</parameters>
+<return> the #GstGLTextureTarget that's equiavalant to @target or
+%GST_GL_TEXTURE_TARGET_NONE
+</return>
+</function>
+
+<function name="gst_gl_texture_target_to_buffer_pool_option">
+<description>
 
 </description>
 <parameters>
-<parameter name="upload">
-<parameter_description> a #GstGLUploadMeta
+<parameter name="target">
+<parameter_description> a #GstGLTextureTarget
 </parameter_description>
 </parameter>
-<parameter name="buffer">
-<parameter_description> a #GstBuffer
+</parameters>
+<return> a string representing the @GstBufferPoolOption specified by @target
+</return>
+</function>
+
+<function name="gst_gl_texture_target_to_gl">
+<description>
+
+</description>
+<parameters>
+<parameter name="target">
+<parameter_description> a #GstGLTextureTarget
 </parameter_description>
 </parameter>
 </parameters>
-<return> whether it was successful
+<return> the OpenGL value for binding the @target with glBindTexture() and
+similar functions or 0
 </return>
 </function>
 
-<function name="gst_gl_upload_meta_get_format">
+<function name="gst_gl_texture_target_to_string">
 <description>
 
 </description>
 <parameters>
-<parameter name="upload">
-<parameter_description> a #GstGLUpload
+<parameter name="str">
+<parameter_description> a string equivalant to one of the GST_GL_TEXTURE_TARGET_*_STR values
 </parameter_description>
 </parameter>
 </parameters>
-<return> The #GstVideoInfo set by
-gst_gl_upload_meta_set_format()
+<return> the #GstGLTextureTarget represented by @str or
+%GST_GL_TEXTURE_TARGET_NONE
 </return>
 </function>
 
-<function name="gst_gl_upload_meta_new">
+<function name="gst_gl_texture_type_from_format">
 <description>
 
 </description>
@@ -4087,14 +5473,36 @@ gst_gl_upload_meta_set_format()
 <parameter_description> a #GstGLContext
 </parameter_description>
 </parameter>
+<parameter name="v_format">
+<parameter_description> a #GstVideoFormat
+</parameter_description>
+</parameter>
+<parameter name="plane">
+<parameter_description> the plane number (starting from 0)
+</parameter_description>
+</parameter>
 </parameters>
-<return> a new #GstGLUploadMeta object
+<return> the #GstVideoGLTextureType for the specified @format and @plane
+that can be allocated using @context
 </return>
 </function>
 
-<function name="gst_gl_upload_meta_set_format">
+<function name="gst_gl_texture_type_n_bytes">
+<description>
+
+</description>
+<parameters>
+<parameter name="tex_format">
+<parameter_description> a #GstVideoGLTextureType
+</parameter_description>
+</parameter>
+</parameters>
+<return> the number of bytes @tex_format used per pixel
+</return>
+</function>
+
+<function name="gst_gl_upload_get_caps">
 <description>
-Initializes @upload with the information required for upload.
 
 </description>
 <parameters>
@@ -4102,12 +5510,17 @@ Initializes @upload with the information required for upload.
 <parameter_description> a #GstGLUpload
 </parameter_description>
 </parameter>
-<parameter name="info">
-<parameter_description> input #GstVideoInfo
+<parameter name="in_caps">
+<parameter_description> the input #GstCaps
+</parameter_description>
+</parameter>
+<parameter name="out_caps">
+<parameter_description> the output #GstCaps
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> The #GstCaps set by gst_gl_upload_set_caps()
+</return>
 </function>
 
 <function name="gst_gl_upload_new">
@@ -4126,8 +5539,8 @@ Initializes @upload with the information required for upload.
 
 <function name="gst_gl_upload_perform_with_buffer">
 <description>
-Uploads @buffer to the texture given by @tex_id.  @tex_id is valid
-until gst_gl_upload_release_buffer() is called.
+Uploads @buffer using the transformation specified by
+gst_gl_upload_set_caps() creating a new #GstBuffer in @outbuf_ptr.
 
 
 </description>
@@ -4137,11 +5550,11 @@ until gst_gl_upload_release_buffer() is called.
 </parameter_description>
 </parameter>
 <parameter name="buffer">
-<parameter_description> a #GstBuffer
+<parameter_description> input #GstBuffer
 </parameter_description>
 </parameter>
 <parameter name="outbuf_ptr">
-<parameter_description> resulting buffer
+<parameter_description> resulting #GstBuffer
 </parameter_description>
 </parameter>
 </parameters>
@@ -4171,9 +5584,10 @@ Adds the required allocation parameters to support uploading.
 <return></return>
 </function>
 
-<function name="gst_gl_upload_release_buffer">
+<function name="gst_gl_upload_set_caps">
 <description>
-Releases any buffers currently referenced by @upload
+Initializes @upload with the information required for upload.
+
 
 </description>
 <parameters>
@@ -4181,72 +5595,335 @@ Releases any buffers currently referenced by @upload
 <parameter_description> a #GstGLUpload
 </parameter_description>
 </parameter>
+<parameter name="in_caps">
+<parameter_description> input #GstCaps
+</parameter_description>
+</parameter>
+<parameter name="out_caps">
+<parameter_description> output #GstCaps
+</parameter_description>
+</parameter>
 </parameters>
-<return></return>
+<return> whether @in_caps and @out_caps could be set on @upload
+</return>
 </function>
 
-<function name="gst_gl_upload_set_caps">
+<function name="gst_gl_value_get_texture_target_mask">
 <description>
-Initializes @upload with the information required for upload.
+See gst_gl_value_set_texture_target_from_mask() for what entails a mask
 
 
 </description>
 <parameters>
-<parameter name="upload">
-<parameter_description> a #GstGLUpload
+<parameter name="value">
+<parameter_description> an initialized #GValue of type G_TYPE_STRING
 </parameter_description>
 </parameter>
-<parameter name="in_caps">
-<parameter_description> input #GstCaps
+</parameters>
+<return> the mask of #GstGLTextureTarget's in @value
+</return>
+</function>
+
+<function name="gst_gl_value_set_texture_target">
+<description>
+
+</description>
+<parameters>
+<parameter name="value">
+<parameter_description> an initialized #GValue of type G_TYPE_STRING
 </parameter_description>
 </parameter>
-<parameter name="out_caps">
-<parameter_description> output #GstCaps
+<parameter name="target">
+<parameter_description> a #GstGLTextureTarget's
 </parameter_description>
 </parameter>
 </parameters>
-<return> whether @in_caps and @out_caps could be set on @upload
+<return> whether the @target could be set on @value
 </return>
 </function>
 
-<function name="gst_gl_view_convert_set_caps">
+<function name="gst_gl_value_set_texture_target_from_mask">
 <description>
-Initializes @viewconvert with the information required for conversion.
+A mask is a bitwise OR of (1 &lt;&lt; target) where target is a valid
+#GstGLTextureTarget
+
 
 </description>
 <parameters>
-<parameter name="viewconvert">
-<parameter_description> a #GstGLViewConvert
+<parameter name="value">
+<parameter_description> an uninitialized #GValue
 </parameter_description>
 </parameter>
-<parameter name="in_caps">
-<parameter_description> input #GstCaps
+<parameter name="target_mask">
+<parameter_description> a bitwise mask of #GstGLTextureTarget's
 </parameter_description>
 </parameter>
-<parameter name="out_caps">
-<parameter_description> output #GstCaps
+</parameters>
+<return> whether the @target_mask could be set on @value
+</return>
+</function>
+
+<function name="gst_gl_video_allocation_params_copy_data">
+<description>
+Copy and set any dynamically allocated resources in @dest_vid.  Intended
+for subclass usage only to chain up at the end of a subclass copy function.
+
+
+</description>
+<parameters>
+<parameter name="src_vid">
+<parameter_description> source #GstGLVideoAllocationParams to copy from
+</parameter_description>
+</parameter>
+<parameter name="dest_vid">
+<parameter_description> destination #GstGLVideoAllocationParams to copy into
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gst_gl_window_draw">
+<function name="gst_gl_video_allocation_params_free_data">
 <description>
-Redraw the window contents.  Implementations should invoke the draw callback.
+Unset and free any dynamically allocated resources.  Intended for subclass
+usage only to chain up at the end of a subclass free function.
 
 
 </description>
 <parameters>
-<parameter name="window">
-<parameter_description> a #GstGLWindow
+<parameter name="params">
+<parameter_description> a #GstGLVideoAllocationParams
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="gst_gl_window_draw_unlocked">
+<function name="gst_gl_video_allocation_params_init_full">
+<description>
+Intended for subclass usage
+
+
+</description>
+<parameters>
+<parameter name="params">
+<parameter_description> a #GstGLVideoAllocationParams to initialize
+</parameter_description>
+</parameter>
+<parameter name="struct_size">
+<parameter_description> the size of the struct in @params
+</parameter_description>
+</parameter>
+<parameter name="alloc_flags">
+<parameter_description> some allocation flags
+</parameter_description>
+</parameter>
+<parameter name="copy">
+<parameter_description> a copy function
+</parameter_description>
+</parameter>
+<parameter name="free">
+<parameter_description> a free function
+</parameter_description>
+</parameter>
+<parameter name="context">
+<parameter_description> a #GstGLContext
+</parameter_description>
+</parameter>
+<parameter name="alloc_params">
+<parameter_description> the #GstAllocationParams for @wrapped_data
+</parameter_description>
+</parameter>
+<parameter name="v_info">
+<parameter_description> the #GstVideoInfo for @wrapped_data
+</parameter_description>
+</parameter>
+<parameter name="plane">
+<parameter_description> the video plane @wrapped_data represents
+</parameter_description>
+</parameter>
+<parameter name="valign">
+<parameter_description> any #GstVideoAlignment applied to symem mappings of @wrapped_data
+</parameter_description>
+</parameter>
+<parameter name="target">
+<parameter_description> the #GstGLTextureTarget
+</parameter_description>
+</parameter>
+<parameter name="wrapped_data">
+<parameter_description> the optional data pointer to wrap
+</parameter_description>
+</parameter>
+<parameter name="gl_handle">
+<parameter_description> the optional OpenGL handle to wrap or 0
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data to call @notify with
+</parameter_description>
+</parameter>
+<parameter name="notify">
+<parameter_description> a #GDestroyNotify
+</parameter_description>
+</parameter>
+</parameters>
+<return> initializes @params with the parameters specified
+
+</return>
+</function>
+
+<function name="gst_gl_video_allocation_params_new">
+<description>
+
+</description>
+<parameters>
+<parameter name="context">
+<parameter_description> a #GstGLContext
+</parameter_description>
+</parameter>
+<parameter name="alloc_params">
+<parameter_description> the #GstAllocationParams for @wrapped_data
+</parameter_description>
+</parameter>
+<parameter name="v_info">
+<parameter_description> the #GstVideoInfo for @wrapped_data
+</parameter_description>
+</parameter>
+<parameter name="plane">
+<parameter_description> the video plane @wrapped_data represents
+</parameter_description>
+</parameter>
+<parameter name="valign">
+<parameter_description> any #GstVideoAlignment applied to symem mappings of @wrapped_data
+</parameter_description>
+</parameter>
+<parameter name="target">
+<parameter_description> the #GstGLTextureTarget for @wrapped_data
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GstGLVideoAllocationParams for allocating #GstGLMemory's
+
+</return>
+</function>
+
+<function name="gst_gl_video_allocation_params_new_wrapped_data">
+<description>
+
+</description>
+<parameters>
+<parameter name="context">
+<parameter_description> a #GstGLContext
+</parameter_description>
+</parameter>
+<parameter name="alloc_params">
+<parameter_description> the #GstAllocationParams for @wrapped_data
+</parameter_description>
+</parameter>
+<parameter name="v_info">
+<parameter_description> the #GstVideoInfo for @wrapped_data
+</parameter_description>
+</parameter>
+<parameter name="plane">
+<parameter_description> the video plane @wrapped_data represents
+</parameter_description>
+</parameter>
+<parameter name="valign">
+<parameter_description> any #GstVideoAlignment applied to symem mappings of @wrapped_data
+</parameter_description>
+</parameter>
+<parameter name="target">
+<parameter_description> the #GstGLTextureTarget for @wrapped_data
+</parameter_description>
+</parameter>
+<parameter name="wrapped_data">
+<parameter_description> the data pointer to wrap
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data to call @notify with
+</parameter_description>
+</parameter>
+<parameter name="notify">
+<parameter_description> a #GDestroyNotify
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GstGLVideoAllocationParams for wrapping @wrapped_data
+
+</return>
+</function>
+
+<function name="gst_gl_video_allocation_params_new_wrapped_texture">
+<description>
+
+</description>
+<parameters>
+<parameter name="context">
+<parameter_description> a #GstGLContext
+</parameter_description>
+</parameter>
+<parameter name="alloc_params">
+<parameter_description> the #GstAllocationParams for @tex_id
+</parameter_description>
+</parameter>
+<parameter name="v_info">
+<parameter_description> the #GstVideoInfo for @tex_id
+</parameter_description>
+</parameter>
+<parameter name="plane">
+<parameter_description> the video plane @tex_id represents
+</parameter_description>
+</parameter>
+<parameter name="valign">
+<parameter_description> any #GstVideoAlignment applied to symem mappings of @tex_id
+</parameter_description>
+</parameter>
+<parameter name="target">
+<parameter_description> the #GstGLTextureTarget for @tex_id
+</parameter_description>
+</parameter>
+<parameter name="tex_id">
+<parameter_description> the GL texture to wrap
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data to call @notify with
+</parameter_description>
+</parameter>
+<parameter name="notify">
+<parameter_description> a #GDestroyNotify
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GstGLVideoAllocationParams for wrapping @tex_id
+
+</return>
+</function>
+
+<function name="gst_gl_view_convert_set_caps">
+<description>
+Initializes @viewconvert with the information required for conversion.
+
+</description>
+<parameters>
+<parameter name="viewconvert">
+<parameter_description> a #GstGLViewConvert
+</parameter_description>
+</parameter>
+<parameter name="in_caps">
+<parameter_description> input #GstCaps
+</parameter_description>
+</parameter>
+<parameter name="out_caps">
+<parameter_description> output #GstCaps
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gst_gl_window_draw">
 <description>
 Redraw the window contents.  Implementations should invoke the draw callback.
 
@@ -4409,21 +6086,6 @@ Start the execution of the runloop.
 <return></return>
 </function>
 
-<function name="gst_gl_window_run_navigation">
-<description>
-Start the execution of the navigation runloop.
-
-
-</description>
-<parameters>
-<parameter name="window">
-<parameter_description> a #GstGLWindow
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
-
 <function name="gst_gl_window_send_message">
 <description>
 Invoke @callback with data on the window thread.  @callback is guarenteed to
@@ -4671,6 +6333,220 @@ Removes the X error trap and returns the current status.
 </return>
 </function>
 
+<function name="gst_glsl_stage_compile">
+<description>
+
+</description>
+<parameters>
+<parameter name="stage">
+<parameter_description> a #GstGLSLStage
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> a #GError to use on failure
+</parameter_description>
+</parameter>
+</parameters>
+<return> whether the compilation suceeded
+</return>
+</function>
+
+<function name="gst_glsl_stage_get_handle">
+<description>
+
+</description>
+<parameters>
+<parameter name="stage">
+<parameter_description> a #GstGLSLStage
+</parameter_description>
+</parameter>
+</parameters>
+<return> The GL handle for this shader stage
+</return>
+</function>
+
+<function name="gst_glsl_stage_get_profile">
+<description>
+
+</description>
+<parameters>
+<parameter name="stage">
+<parameter_description> a #GstGLSLStage
+</parameter_description>
+</parameter>
+</parameters>
+<return> The GLSL profile for the current shader stage
+</return>
+</function>
+
+<function name="gst_glsl_stage_get_shader_type">
+<description>
+
+</description>
+<parameters>
+<parameter name="stage">
+<parameter_description> a #GstGLSLStage
+</parameter_description>
+</parameter>
+</parameters>
+<return> The GL shader type for this shader stage
+</return>
+</function>
+
+<function name="gst_glsl_stage_get_version">
+<description>
+
+</description>
+<parameters>
+<parameter name="stage">
+<parameter_description> a #GstGLSLStage
+</parameter_description>
+</parameter>
+</parameters>
+<return> The GLSL version for the current shader stage
+</return>
+</function>
+
+<function name="gst_glsl_stage_new">
+<description>
+
+</description>
+<parameters>
+<parameter name="context">
+<parameter_description> a #GstGLContext
+</parameter_description>
+</parameter>
+<parameter name="type">
+<parameter_description> the GL enum shader stage type
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GstGLSLStage of the specified @type
+</return>
+</function>
+
+<function name="gst_glsl_stage_new_with_default_fragment">
+<description>
+
+</description>
+<parameters>
+<parameter name="context">
+<parameter_description> a #GstGLContext
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GstGLSLStage with the default fragment shader
+</return>
+</function>
+
+<function name="gst_glsl_stage_new_with_default_vertex">
+<description>
+
+</description>
+<parameters>
+<parameter name="context">
+<parameter_description> a #GstGLContext
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GstGLSLStage with the default vertex shader
+</return>
+</function>
+
+<function name="gst_glsl_stage_new_with_string">
+<description>
+
+</description>
+<parameters>
+<parameter name="context">
+<parameter_description> a #GstGLContext
+</parameter_description>
+</parameter>
+<parameter name="type">
+<parameter_description> the GL enum shader stage type
+</parameter_description>
+</parameter>
+<parameter name="version">
+<parameter_description> the #GstGLSLVersion
+</parameter_description>
+</parameter>
+<parameter name="profile">
+<parameter_description> the #GstGLSLProfile
+</parameter_description>
+</parameter>
+<parameter name="str">
+<parameter_description> a shader string
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GstGLSLStage of the specified @type
+</return>
+</function>
+
+<function name="gst_glsl_stage_new_with_strings">
+<description>
+
+</description>
+<parameters>
+<parameter name="context">
+<parameter_description> a #GstGLContext
+</parameter_description>
+</parameter>
+<parameter name="type">
+<parameter_description> the GL enum shader stage type
+</parameter_description>
+</parameter>
+<parameter name="version">
+<parameter_description> the #GstGLSLVersion
+</parameter_description>
+</parameter>
+<parameter name="profile">
+<parameter_description> the #GstGLSLProfile
+</parameter_description>
+</parameter>
+<parameter name="n_strings">
+<parameter_description> the number of strings in @str
+</parameter_description>
+</parameter>
+<parameter name="str">
+<parameter_description> an array of strings concatted together to produce a shader
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GstGLSLStage of the specified @type
+</return>
+</function>
+
+<function name="gst_glsl_stage_set_strings">
+<description>
+Replaces the current shader string with @str.
+
+</description>
+<parameters>
+<parameter name="stage">
+<parameter_description> a #GstGLSLStage
+</parameter_description>
+</parameter>
+<parameter name="version">
+<parameter_description> a #GstGLSLVersion
+</parameter_description>
+</parameter>
+<parameter name="profile">
+<parameter_description> a #GstGLSLProfile
+</parameter_description>
+</parameter>
+<parameter name="n_strings">
+<parameter_description> number of strings in @str
+</parameter_description>
+</parameter>
+<parameter name="str">
+<parameter_description> a GLSL shader string
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gst_h263_parse">
 <description>
 Parses @data and fills @packet with the information of the next packet
@@ -5592,6 +7468,29 @@ Parses @data, and fills the @vps structure.
 </return>
 </function>
 
+<function name="gst_h265_quant_matrix_4x4_get_raster_from_uprightdiagonal">
+<description>
+Converts quantization matrix @quant from uprightdiagonal scan order to
+raster scan order and store the resulting factors into @out_quant.
+
+Note: it is an error to pass the same table in both @quant and
+ out_quant arguments.
+
+
+</description>
+<parameters>
+<parameter name="out_quant">
+<parameter_description> The resulting quantization matrix
+</parameter_description>
+</parameter>
+<parameter name="quant">
+<parameter_description> The source quantization matrix
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gst_h265_quant_matrix_4x4_get_raster_from_zigzag">
 <description>
 Converts quantization matrix @quant from zigzag scan order to
@@ -5615,6 +7514,30 @@ Note: it is an error to pass the same table in both @quant and
 <return></return>
 </function>
 
+<function name="gst_h265_quant_matrix_4x4_get_uprightdiagonal_from_raster">
+<description>
+Converts quantization matrix @quant from raster scan order to
+uprightdiagonal scan order and store the resulting factors
+into @out_quant.
+
+Note: it is an error to pass the same table in both @quant and
+ out_quant arguments.
+
+
+</description>
+<parameters>
+<parameter name="out_quant">
+<parameter_description> The resulting quantization matrix
+</parameter_description>
+</parameter>
+<parameter name="quant">
+<parameter_description> The source quantization matrix
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gst_h265_quant_matrix_4x4_get_zigzag_from_raster">
 <description>
 Converts quantization matrix @quant from raster scan order to
@@ -5638,6 +7561,29 @@ Note: it is an error to pass the same table in both @quant and
 <return></return>
 </function>
 
+<function name="gst_h265_quant_matrix_8x8_get_raster_from_uprightdiagonal">
+<description>
+Converts quantization matrix @quant from uprightdiagonal scan order to
+raster scan order and store the resulting factors into @out_quant.
+
+Note: it is an error to pass the same table in both @quant and
+ out_quant arguments.
+
+
+</description>
+<parameters>
+<parameter name="out_quant">
+<parameter_description> The resulting quantization matrix
+</parameter_description>
+</parameter>
+<parameter name="quant">
+<parameter_description> The source quantization matrix
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gst_h265_quant_matrix_8x8_get_raster_from_zigzag">
 <description>
 Converts quantization matrix @quant from zigzag scan order to
@@ -5661,6 +7607,30 @@ Note: it is an error to pass the same table in both @quant and
 <return></return>
 </function>
 
+<function name="gst_h265_quant_matrix_8x8_get_uprightdiagonal_from_raster">
+<description>
+Converts quantization matrix @quant from raster scan order to
+uprightdiagonal scan order and store the resulting factors
+into @out_quant.
+
+Note: it is an error to pass the same table in both @quant and
+ out_quant arguments.
+
+
+</description>
+<parameters>
+<parameter name="out_quant">
+<parameter_description> The resulting quantization matrix
+</parameter_description>
+</parameter>
+<parameter name="quant">
+<parameter_description> The source quantization matrix
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gst_h265_quant_matrix_8x8_get_zigzag_from_raster">
 <description>
 Converts quantization matrix @quant from raster scan order to
@@ -5907,7 +7877,22 @@ removed or not, or %NULL
 <return></return>
 </function>
 
-<function name="gst_is_gl_base_buffer">
+<function name="gst_is_gl_base_memory">
+<description>
+
+</description>
+<parameters>
+<parameter name="mem">
+<parameter_description>a #GstMemory
+</parameter_description>
+</parameter>
+</parameters>
+<return> whether the memory at @mem is a #GstGLBaseMemory
+
+</return>
+</function>
+
+<function name="gst_is_gl_buffer">
 <description>
 
 </description>
@@ -5917,7 +7902,8 @@ removed or not, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> whether the memory at @mem is a #GstGLBaseBuffer
+<return> whether the memory at @mem is a #GstGLBuffer
+
 </return>
 </function>
 
@@ -5932,6 +7918,22 @@ removed or not, or %NULL
 </parameter>
 </parameters>
 <return> whether the memory at @mem is a #GstGLMemory
+
+</return>
+</function>
+
+<function name="gst_is_gl_memory_pbo">
+<description>
+
+</description>
+<parameters>
+<parameter name="mem">
+<parameter_description>a #GstMemory
+</parameter_description>
+</parameter>
+</parameters>
+<return> whether the memory at @mem is a #GstGLMemoryPBO
+
 </return>
 </function>
 
@@ -6949,6 +8951,34 @@ Creates a #GstMpegtsDescriptor with custom @tag and @data
 </return>
 </function>
 
+<function name="gst_mpegts_descriptor_from_custom_with_extension">
+<description>
+Creates a #GstMpegtsDescriptor with custom @tag, @tag_extension and @data
+
+
+</description>
+<parameters>
+<parameter name="tag">
+<parameter_description> descriptor tag
+</parameter_description>
+</parameter>
+<parameter name="tag_extension">
+<parameter_description> descriptor tag extension
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> descriptor data (after tag and length field)
+</parameter_description>
+</parameter>
+<parameter name="length">
+<parameter_description> length of @data
+</parameter_description>
+</parameter>
+</parameters>
+<return> #GstMpegtsDescriptor
+</return>
+</function>
+
 <function name="gst_mpegts_descriptor_from_dvb_network_name">
 <description>
 Creates a #GstMpegtsDescriptor to be a %GST_MTS_DESC_DVB_NETWORK_NAME,
@@ -8692,7 +10722,6 @@ Get the noise reduction mode for the #GstElement
 </parameter>
 </parameters>
 <return> %TRUE if getting the value succeeded, %FALSE otherwise
-
 </return>
 </function>
 
@@ -9002,7 +11031,6 @@ Set the noise reduction mode for the #GstElement
 </parameter>
 </parameters>
 <return> %TRUE if setting the value succeeded, %FALSE otherwise
-
 </return>
 </function>
 
@@ -9493,6 +11521,65 @@ the @size argument shall represent the whole frame size.
 </return>
 </function>
 
+<function name="gst_vp9_parser_free">
+<description>
+Frees @parser.
+
+
+</description>
+<parameters>
+<parameter name="parser">
+<parameter_description> the #GstVp9Parser to free
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gst_vp9_parser_new">
+<description>
+Creates a new #GstVp9Parser. It should be freed with
+gst_vp9_parser_free() after use.
+
+
+</description>
+<parameters>
+</parameters>
+<return> a new #GstVp9Parser
+
+</return>
+</function>
+
+<function name="gst_vp9_parser_parse_frame_header">
+<description>
+Parses the VP9 bitstream contained in @data, and fills in @frame_hdr
+with the information. The @size argument represent the whole frame size.
+
+
+</description>
+<parameters>
+<parameter name="parser">
+<parameter_description> The #GstVp9Parser
+</parameter_description>
+</parameter>
+<parameter name="frame_hdr">
+<parameter_description> The #GstVp9FrameHdr to fill
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> The data to parse
+</parameter_description>
+</parameter>
+<parameter name="size">
+<parameter_description> The size of the @data to parse
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GstVp9ParserResult
+
+</return>
+</function>
+
 <function name="gst_wayland_video_begin_geometry_change">
 <description>
 Notifies the video sink that we are about to change its
diff --git a/gst-plugins-bad/src/gst_enums.defs b/gst-plugins-bad/src/gst_enums.defs
index 7101ef7..c83c674 100644
--- a/gst-plugins-bad/src/gst_enums.defs
+++ b/gst-plugins-bad/src/gst_enums.defs
@@ -1286,6 +1286,163 @@
   )
 )
 
+;; From gstvp9parser.h
+
+;; Original typedef:
+;; typedef enum
+;; {
+;;   GST_VP9_PARSER_OK,
+;;   GST_VP9_PARSER_BROKEN_DATA,
+;;   GST_VP9_PARSER_ERROR,
+;; } GstVp9ParserResult;
+
+(define-enum-extended Vp9ParserResult
+  (in-module "Gst")
+  (c-name "GstVp9ParserResult")
+  (values
+    '("ok" "GST_VP9_PARSER_OK" "0")
+    '("broken-data" "GST_VP9_PARSER_BROKEN_DATA" "1")
+    '("error" "GST_VP9_PARSER_ERROR" "2")
+  )
+)
+
+;; Original typedef:
+;; typedef enum {
+;;   GST_VP9_PROFILE_0,
+;;   GST_VP9_PROFILE_1,
+;;   GST_VP9_PROFILE_2,
+;;   GST_VP9_PROFILE_3,
+;;   GST_VP9_PROFILE_UNDEFINED
+;; } GstVP9Profile;
+
+(define-enum-extended VP9Profile
+  (in-module "Gst")
+  (c-name "GstVP9Profile")
+  (values
+    '("0" "GST_VP9_PROFILE_0" "0")
+    '("1" "GST_VP9_PROFILE_1" "1")
+    '("2" "GST_VP9_PROFILE_2" "2")
+    '("3" "GST_VP9_PROFILE_3" "3")
+    '("undefined" "GST_VP9_PROFILE_UNDEFINED" "4")
+  )
+)
+
+;; Original typedef:
+;; typedef enum {
+;;   GST_VP9_KEY_FRAME   = 0,
+;;   GST_VP9_INTER_FRAME = 1
+;; } GstVp9FrameType;
+
+(define-enum-extended Vp9FrameType
+  (in-module "Gst")
+  (c-name "GstVp9FrameType")
+  (values
+    '("key-frame" "GST_VP9_KEY_FRAME" "0")
+    '("inter-frame" "GST_VP9_INTER_FRAME" "1")
+  )
+)
+
+;; Original typedef:
+;; typedef enum {
+;;   GST_VP9_BIT_DEPTH_8  = 8,
+;;   GST_VP9_BIT_DEPTH_10 = 10,
+;;   GST_VP9_BIT_DEPTH_12 = 12
+;; } GstVp9BitDepth;
+
+(define-enum-extended Vp9BitDepth
+  (in-module "Gst")
+  (c-name "GstVp9BitDepth")
+  (values
+    '("8" "GST_VP9_BIT_DEPTH_8" "8")
+    '("10" "GST_VP9_BIT_DEPTH_10" "10")
+    '("12" "GST_VP9_BIT_DEPTH_12" "12")
+  )
+)
+
+;; Original typedef:
+;; typedef enum {
+;;   GST_VP9_CS_UNKNOWN               = 0,
+;;   GST_VP9_CS_BT_601                = 1,
+;;   GST_VP9_CS_BT_709                = 2,
+;;   GST_VP9_CS_SMPTE_170             = 3,
+;;   GST_VP9_CS_SMPTE_240             = 4,
+;;   GST_VP9_CS_BT_2020               = 5,
+;;   GST_VP9_CS_RESERVED_2            = 6,
+;;   GST_VP9_CS_SRGB                  = 7
+;; } GstVp9ColorSpace;
+
+(define-enum-extended Vp9ColorSpace
+  (in-module "Gst")
+  (c-name "GstVp9ColorSpace")
+  (values
+    '("unknown" "GST_VP9_CS_UNKNOWN" "0")
+    '("bt-601" "GST_VP9_CS_BT_601" "1")
+    '("bt-709" "GST_VP9_CS_BT_709" "2")
+    '("smpte-170" "GST_VP9_CS_SMPTE_170" "3")
+    '("smpte-240" "GST_VP9_CS_SMPTE_240" "4")
+    '("bt-2020" "GST_VP9_CS_BT_2020" "5")
+    '("reserved-2" "GST_VP9_CS_RESERVED_2" "6")
+    '("srgb" "GST_VP9_CS_SRGB" "7")
+  )
+)
+
+;; Original typedef:
+;; typedef enum {
+;;   GST_VP9_CR_LIMITED,
+;;   GST_VP9_CR_FULL
+;; } GstVp9ColorRange;
+
+(define-enum-extended Vp9ColorRange
+  (in-module "Gst")
+  (c-name "GstVp9ColorRange")
+  (values
+    '("limited" "GST_VP9_CR_LIMITED" "0")
+    '("full" "GST_VP9_CR_FULL" "1")
+  )
+)
+
+;; Original typedef:
+;; typedef enum {
+;;   GST_VP9_INTERPOLATION_FILTER_EIGHTTAP        = 0,
+;;   GST_VP9_INTERPOLATION_FILTER_EIGHTTAP_SMOOTH = 1,
+;;   GST_VP9_INTERPOLATION_FILTER_EIGHTTAP_SHARP  = 2,
+;;   GST_VP9_INTERPOLATION_FILTER_BILINEAR        = 3,
+;;   GST_VP9_INTERPOLATION_FILTER_SWITCHABLE      = 4
+;; } GstVp9InterpolationFilter;
+
+(define-enum-extended Vp9InterpolationFilter
+  (in-module "Gst")
+  (c-name "GstVp9InterpolationFilter")
+  (values
+    '("eighttap" "GST_VP9_INTERPOLATION_FILTER_EIGHTTAP" "0")
+    '("eighttap-smooth" "GST_VP9_INTERPOLATION_FILTER_EIGHTTAP_SMOOTH" "1")
+    '("eighttap-sharp" "GST_VP9_INTERPOLATION_FILTER_EIGHTTAP_SHARP" "2")
+    '("bilinear" "GST_VP9_INTERPOLATION_FILTER_BILINEAR" "3")
+    '("switchable" "GST_VP9_INTERPOLATION_FILTER_SWITCHABLE" "4")
+  )
+)
+
+;; Original typedef:
+;; typedef enum {
+;;   GST_VP9_REF_FRAME_INTRA  = 0,
+;;   GST_VP9_REF_FRAME_LAST   = 1,
+;;   GST_VP9_REF_FRAME_GOLDEN = 2,
+;;   GST_VP9_REF_FRAME_ALTREF = 3,
+;;   GST_VP9_REF_FRAME_MAX    = 4
+;; } GstVp9RefFrameType;
+
+(define-enum-extended Vp9RefFrameType
+  (in-module "Gst")
+  (c-name "GstVp9RefFrameType")
+  (values
+    '("intra" "GST_VP9_REF_FRAME_INTRA" "0")
+    '("last" "GST_VP9_REF_FRAME_LAST" "1")
+    '("golden" "GST_VP9_REF_FRAME_GOLDEN" "2")
+    '("altref" "GST_VP9_REF_FRAME_ALTREF" "3")
+    '("max" "GST_VP9_REF_FRAME_MAX" "4")
+  )
+)
+
 ;; From gstglapi.h
 
 ;; Original typedef:
@@ -1339,39 +1496,39 @@
   )
 )
 
-;; From gstglbasebuffer.h
+;; From gstglbasememory.h
 
 ;; Original typedef:
 ;; typedef enum
 ;; {
-;;   GST_GL_BASE_BUFFER_ERROR_FAILED,
-;;   GST_GL_BASE_BUFFER_ERROR_OLD_LIBS,
-;;   GST_GL_BASE_BUFFER_ERROR_RESOURCE_UNAVAILABLE,
-;; } GstGLBufferError;
+;;   GST_GL_BASE_MEMORY_ERROR_FAILED,
+;;   GST_GL_BASE_MEMORY_ERROR_OLD_LIBS,
+;;   GST_GL_BASE_MEMORY_ERROR_RESOURCE_UNAVAILABLE,
+;; } GstGLBaseMemoryError;
 
-(define-enum-extended GLBufferError
+(define-enum-extended GLBaseMemoryError
   (in-module "Gst")
-  (c-name "GstGLBufferError")
+  (c-name "GstGLBaseMemoryError")
   (values
-    '("failed" "GST_GL_BASE_BUFFER_ERROR_FAILED" "0")
-    '("old-libs" "GST_GL_BASE_BUFFER_ERROR_OLD_LIBS" "1")
-    '("resource-unavailable" "GST_GL_BASE_BUFFER_ERROR_RESOURCE_UNAVAILABLE" "2")
+    '("failed" "GST_GL_BASE_MEMORY_ERROR_FAILED" "0")
+    '("old-libs" "GST_GL_BASE_MEMORY_ERROR_OLD_LIBS" "1")
+    '("resource-unavailable" "GST_GL_BASE_MEMORY_ERROR_RESOURCE_UNAVAILABLE" "2")
   )
 )
 
 ;; Original typedef:
 ;; typedef enum
 ;; {
-;;   GST_GL_BASE_BUFFER_FLAG_NEED_DOWNLOAD   = (GST_MEMORY_FLAG_LAST << 0),
-;;   GST_GL_BASE_BUFFER_FLAG_NEED_UPLOAD     = (GST_MEMORY_FLAG_LAST << 1)
-;; } GstGLBaseBufferFlags;
+;;   GST_GL_BASE_MEMORY_TRANSFER_NEED_DOWNLOAD   = (GST_MEMORY_FLAG_LAST << 0),
+;;   GST_GL_BASE_MEMORY_TRANSFER_NEED_UPLOAD     = (GST_MEMORY_FLAG_LAST << 1)
+;; } GstGLBaseMemoryTransfer;
 
-(define-flags-extended GLBaseBufferFlags
+(define-flags-extended GLBaseMemoryTransfer
   (in-module "Gst")
-  (c-name "GstGLBaseBufferFlags")
+  (c-name "GstGLBaseMemoryTransfer")
   (values
-    '("download" "GST_GL_BASE_BUFFER_FLAG_NEED_DOWNLOAD" "(GST_MEMORY_FLAG_LAST << 0)")
-    '("upload" "GST_GL_BASE_BUFFER_FLAG_NEED_UPLOAD" "(GST_MEMORY_FLAG_LAST << 1)")
+    '("download" "GST_GL_BASE_MEMORY_TRANSFER_NEED_DOWNLOAD" "(GST_MEMORY_FLAG_LAST << 0)")
+    '("upload" "GST_GL_BASE_MEMORY_TRANSFER_NEED_UPLOAD" "(GST_MEMORY_FLAG_LAST << 1)")
   )
 )
 
@@ -1432,56 +1589,139 @@
   )
 )
 
-;; From gstglmemory.h
+;; From gstgl_enums.h
 
 ;; Original typedef:
-;; typedef enum _GstGLMemoryTransfer
+;; typedef enum
 ;; {
-;;   /* force a transfer between the texture and the PBO (if available) */
-;;   GST_GL_MEMORY_TRANSFER_NEED_UPLOAD = (1 << 0),
-;;   GST_GL_MEMORY_TRANSFER_NEED_DOWNLOAD = (1 << 1),
-;; } GstGLMemoryTransfer;
+;;   GST_GL_TEXTURE_TARGET_NONE,
+;;   GST_GL_TEXTURE_TARGET_2D,
+;;   GST_GL_TEXTURE_TARGET_RECTANGLE,
+;;   GST_GL_TEXTURE_TARGET_EXTERNAL_OES,
+;; } GstGLTextureTarget;
 
-(define-flags-extended GLMemoryTransfer
+(define-enum-extended GLTextureTarget
   (in-module "Gst")
-  (c-name "GstGLMemoryTransfer")
+  (c-name "GstGLTextureTarget")
   (values
-    '("upload" "GST_GL_MEMORY_TRANSFER_NEED_UPLOAD" "(1 << 0)")
-    '("download" "GST_GL_MEMORY_TRANSFER_NEED_DOWNLOAD" "(1 << 1)")
+    '("none" "GST_GL_TEXTURE_TARGET_NONE" "0")
+    '("2d" "GST_GL_TEXTURE_TARGET_2D" "1")
+    '("rectangle" "GST_GL_TEXTURE_TARGET_RECTANGLE" "2")
+    '("external-oes" "GST_GL_TEXTURE_TARGET_EXTERNAL_OES" "3")
   )
 )
 
-;; From gstglshader.h
+;; From gstglquery.h
 
 ;; Original typedef:
-;; typedef enum {
-;;   GST_GL_SHADER_ERROR_COMPILE,
-;;   GST_GL_SHADER_ERROR_LINK,
-;;   GST_GL_SHADER_ERROR_PROGRAM
-;; } GstGLShaderError;
+;; typedef enum
+;; {
+;;   GST_GL_QUERY_NONE,
+;;   GST_GL_QUERY_TIME_ELAPSED,
+;;   GST_GL_QUERY_TIMESTAMP,
+;; } GstGLQueryType;
 
-(define-enum-extended GLShaderError
+(define-enum-extended GLQueryType
   (in-module "Gst")
-  (c-name "GstGLShaderError")
+  (c-name "GstGLQueryType")
   (values
-    '("compile" "GST_GL_SHADER_ERROR_COMPILE" "0")
-    '("link" "GST_GL_SHADER_ERROR_LINK" "1")
-    '("program" "GST_GL_SHADER_ERROR_PROGRAM" "2")
+    '("none" "GST_GL_QUERY_NONE" "0")
+    '("time-elapsed" "GST_GL_QUERY_TIME_ELAPSED" "1")
+    '("timestamp" "GST_GL_QUERY_TIMESTAMP" "2")
   )
 )
 
+;; From gstglsl.h
+
 ;; Original typedef:
 ;; typedef enum {
-;;   GST_GL_SHADER_FRAGMENT_SOURCE,
-;;   GST_GL_SHADER_VERTEX_SOURCE
-;; } GstGLShaderSourceType;
+;;   GST_GLSL_ERROR_COMPILE,
+;;   GST_GLSL_ERROR_LINK,
+;;   GST_GLSL_ERROR_PROGRAM,
+;; } GstGLSLError;
 
-(define-enum-extended GLShaderSourceType
+(define-enum-extended GLSLError
   (in-module "Gst")
-  (c-name "GstGLShaderSourceType")
+  (c-name "GstGLSLError")
   (values
-    '("fragment-source" "GST_GL_SHADER_FRAGMENT_SOURCE" "0")
-    '("vertex-source" "GST_GL_SHADER_VERTEX_SOURCE" "1")
+    '("compile" "GST_GLSL_ERROR_COMPILE" "0")
+    '("link" "GST_GLSL_ERROR_LINK" "1")
+    '("program" "GST_GLSL_ERROR_PROGRAM" "2")
+  )
+)
+
+;; Original typedef:
+;; typedef enum
+;; {
+;;   GST_GLSL_VERSION_NONE = 0,
+;; 
+;;   GST_GLSL_VERSION_100 = 100, /* ES */
+;;   GST_GLSL_VERSION_110 = 110, /* GL */
+;;   GST_GLSL_VERSION_120 = 120, /* GL */
+;;   GST_GLSL_VERSION_130 = 130, /* GL */
+;;   GST_GLSL_VERSION_140 = 140, /* GL */
+;;   GST_GLSL_VERSION_150 = 150, /* GL */
+;;   GST_GLSL_VERSION_300 = 300, /* ES */
+;;   GST_GLSL_VERSION_310 = 310, /* ES */
+;;   GST_GLSL_VERSION_320 = 320, /* ES */
+;;   GST_GLSL_VERSION_330 = 330, /* GL */
+;;   GST_GLSL_VERSION_400 = 400, /* GL */
+;;   GST_GLSL_VERSION_410 = 410, /* GL */
+;;   GST_GLSL_VERSION_420 = 420, /* GL */
+;;   GST_GLSL_VERSION_430 = 430, /* GL */
+;;   GST_GLSL_VERSION_440 = 440, /* GL */
+;;   GST_GLSL_VERSION_450 = 450, /* GL */
+;; 
+;;   GST_GLSL_VERSION_ANY = -1,
+;; } GstGLSLVersion;
+
+(define-enum-extended GLSLVersion
+  (in-module "Gst")
+  (c-name "GstGLSLVersion")
+  (values
+    '("none" "GST_GLSL_VERSION_NONE" "0")
+    '("100" "GST_GLSL_VERSION_100" "100")
+    '("110" "GST_GLSL_VERSION_110" "110")
+    '("120" "GST_GLSL_VERSION_120" "120")
+    '("130" "GST_GLSL_VERSION_130" "130")
+    '("140" "GST_GLSL_VERSION_140" "140")
+    '("150" "GST_GLSL_VERSION_150" "150")
+    '("300" "GST_GLSL_VERSION_300" "300")
+    '("310" "GST_GLSL_VERSION_310" "310")
+    '("320" "GST_GLSL_VERSION_320" "320")
+    '("330" "GST_GLSL_VERSION_330" "330")
+    '("400" "GST_GLSL_VERSION_400" "400")
+    '("410" "GST_GLSL_VERSION_410" "410")
+    '("420" "GST_GLSL_VERSION_420" "420")
+    '("430" "GST_GLSL_VERSION_430" "430")
+    '("440" "GST_GLSL_VERSION_440" "440")
+    '("450" "GST_GLSL_VERSION_450" "450")
+    '("any" "GST_GLSL_VERSION_ANY" "-1")
+  )
+)
+
+;; Original typedef:
+;; typedef enum
+;; {
+;;   /* XXX: maybe make GstGLAPI instead */
+;;   GST_GLSL_PROFILE_NONE = 0,
+;; 
+;;   GST_GLSL_PROFILE_ES = (1 << 0),
+;;   GST_GLSL_PROFILE_CORE = (1 << 1),
+;;   GST_GLSL_PROFILE_COMPATIBILITY = (1 << 2),
+;; 
+;;   GST_GLSL_PROFILE_ANY = -1,
+;; } GstGLSLProfile;
+
+(define-flags-extended GLSLProfile
+  (in-module "Gst")
+  (c-name "GstGLSLProfile")
+  (values
+    '("none" "GST_GLSL_PROFILE_NONE" "0x0")
+    '("es" "GST_GLSL_PROFILE_ES" "(1 << 0)")
+    '("core" "GST_GLSL_PROFILE_CORE" "(1 << 1)")
+    '("compatibility" "GST_GLSL_PROFILE_COMPATIBILITY" "(1 << 2)")
+    '("any" "GST_GLSL_PROFILE_ANY" "0xFFFFFFFFFFFFFFFF")
   )
 )
 
@@ -1550,6 +1790,10 @@
 ;;   GstVideoInfo in_info;
 ;;   GstVideoInfo out_info;
 ;; 
+;;   GstGLTextureTarget from_texture_target;
+;;   GstGLTextureTarget to_texture_target;
+;;   gboolean caps_passthrough;
+;; 
 ;;   gboolean initted;
 ;;   gboolean reconfigure;
 ;; 
diff --git a/gst-plugins-bad/src/gst_methods.defs b/gst-plugins-bad/src/gst_methods.defs
index 59dde8a..8fdd284 100644
--- a/gst-plugins-bad/src/gst_methods.defs
+++ b/gst-plugins-bad/src/gst_methods.defs
@@ -35,25 +35,25 @@
   (gtype-id "GST_TYPE_FRAGMENT")
 )
 
-(define-object GLBaseBufferAllocator
+(define-object GLBaseFilter
   (in-module "Gst")
-  (parent "GstAllocator")
-  (c-name "GstGLBaseBufferAllocator")
-  (gtype-id "GST_TYPE_GL_BASE_BUFFER_ALLOCATOR")
+  (parent "GstBaseTransform")
+  (c-name "GstGLBaseFilter")
+  (gtype-id "GST_TYPE_GL_BASE_FILTER")
 )
 
-(define-object GLAllocator
+(define-object GLBaseMemoryAllocator
   (in-module "Gst")
-  (parent "GstGLBaseBufferAllocator")
-  (c-name "GstGLAllocator")
-  (gtype-id "GST_TYPE_GL_ALLOCATOR")
+  (parent "GstAllocator")
+  (c-name "GstGLBaseMemoryAllocator")
+  (gtype-id "GST_TYPE_GL_BASE_MEMORY_ALLOCATOR")
 )
 
-(define-object GLBaseFilter
+(define-object GLBufferAllocator
   (in-module "Gst")
-  (parent "GstBaseTransform")
-  (c-name "GstGLBaseFilter")
-  (gtype-id "GST_TYPE_GL_BASE_FILTER")
+  (parent "GstGLBaseMemoryAllocator")
+  (c-name "GstGLBufferAllocator")
+  (gtype-id "GST_TYPE_GL_BUFFER_ALLOCATOR")
 )
 
 (define-object GLBufferPool
@@ -77,18 +77,18 @@
   (gtype-id "GST_TYPE_GL_CONTEXT")
 )
 
-(define-object GLDisplay
+(define-object GLControlBindingProxy
   (in-module "Gst")
-  (parent "GstObject")
-  (c-name "GstGLDisplay")
-  (gtype-id "GST_TYPE_GL_DISPLAY")
+  (parent "GstControlBinding")
+  (c-name "GstGLControlBindingProxy")
+  (gtype-id "GST_TYPE_GL_CONTROL_BINDING_PROXY")
 )
 
-(define-object GLDownload
+(define-object GLDisplay
   (in-module "Gst")
   (parent "GstObject")
-  (c-name "GstGLDownload")
-  (gtype-id "GST_TYPE_GL_DOWNLOAD")
+  (c-name "GstGLDisplay")
+  (gtype-id "GST_TYPE_GL_DISPLAY")
 )
 
 (define-object GLFilter
@@ -105,6 +105,20 @@
   (gtype-id "GST_TYPE_GL_FRAMEBUFFER")
 )
 
+(define-object GLMemoryAllocator
+  (in-module "Gst")
+  (parent "GstGLBaseMemoryAllocator")
+  (c-name "GstGLMemoryAllocator")
+  (gtype-id "GST_TYPE_GL_MEMORY_ALLOCATOR")
+)
+
+(define-object GLMemoryPBOAllocator
+  (in-module "Gst")
+  (parent "GstGLMemoryAllocator")
+  (c-name "GstGLMemoryPBOAllocator")
+  (gtype-id "GST_TYPE_GL_MEMORY_PBO_ALLOCATOR")
+)
+
 (define-object GLOverlayCompositor
   (in-module "Gst")
   (parent "GstObject")
@@ -112,6 +126,13 @@
   (gtype-id "GST_TYPE_GL_OVERLAY_COMPOSITOR")
 )
 
+(define-object GLSLStage
+  (in-module "Gst")
+  (parent "GstObject")
+  (c-name "GstGLSLStage")
+  (gtype-id "GST_TYPE_GLSL_STAGE")
+)
+
 (define-object GLShader
   (in-module "Gst")
   (parent "GstObject")
@@ -126,13 +147,6 @@
   (gtype-id "GST_TYPE_GL_UPLOAD")
 )
 
-(define-object GLUploadMeta
-  (in-module "Gst")
-  (parent "GstObject")
-  (c-name "GstGLUploadMeta")
-  (gtype-id "GST_TYPE_GL_UPLOAD_META")
-)
-
 (define-object GLViewConvert
   (in-module "Gst")
   (parent "GstObject")
@@ -395,24 +409,24 @@
   )
 )
 
-(define-enum GLBufferError
+(define-enum GLBaseMemoryError
   (in-module "Gst")
-  (c-name "GstGLBufferError")
-  (gtype-id "GST_TYPE_GL_BUFFER_ERROR")
+  (c-name "GstGLBaseMemoryError")
+  (gtype-id "GST_TYPE_GL_BASE_MEMORY_ERROR")
   (values
-    '("failed" "GST_GL_BASE_BUFFER_ERROR_FAILED")
-    '("old-libs" "GST_GL_BASE_BUFFER_ERROR_OLD_LIBS")
-    '("resource-unavailable" "GST_GL_BASE_BUFFER_ERROR_RESOURCE_UNAVAILABLE")
+    '("failed" "GST_GL_BASE_MEMORY_ERROR_FAILED")
+    '("old-libs" "GST_GL_BASE_MEMORY_ERROR_OLD_LIBS")
+    '("resource-unavailable" "GST_GL_BASE_MEMORY_ERROR_RESOURCE_UNAVAILABLE")
   )
 )
 
-(define-flags GLBaseBufferFlags
+(define-flags GLBaseMemoryTransfer
   (in-module "Gst")
-  (c-name "GstGLBaseBufferFlags")
-  (gtype-id "GST_TYPE_GL_BASE_BUFFER_FLAGS")
+  (c-name "GstGLBaseMemoryTransfer")
+  (gtype-id "GST_TYPE_GL_BASE_MEMORY_TRANSFER")
   (values
-    '("download" "GST_GL_BASE_BUFFER_FLAG_NEED_DOWNLOAD")
-    '("upload" "GST_GL_BASE_BUFFER_FLAG_NEED_UPLOAD")
+    '("download" "GST_GL_BASE_MEMORY_TRANSFER_NEED_DOWNLOAD")
+    '("upload" "GST_GL_BASE_MEMORY_TRANSFER_NEED_UPLOAD")
   )
 )
 
@@ -446,24 +460,76 @@
   )
 )
 
-(define-enum GLShaderError
+(define-enum GLTextureTarget
+  (in-module "Gst")
+  (c-name "GstGLTextureTarget")
+  (gtype-id "GST_TYPE_GL_TEXTURE_TARGET")
+  (values
+    '("none" "GST_GL_TEXTURE_TARGET_NONE")
+    '("2d" "GST_GL_TEXTURE_TARGET_2D")
+    '("rectangle" "GST_GL_TEXTURE_TARGET_RECTANGLE")
+    '("external-oes" "GST_GL_TEXTURE_TARGET_EXTERNAL_OES")
+  )
+)
+
+(define-enum GLQueryType
   (in-module "Gst")
-  (c-name "GstGLShaderError")
-  (gtype-id "GST_TYPE_GL_SHADER_ERROR")
+  (c-name "GstGLQueryType")
+  (gtype-id "GST_TYPE_GL_QUERY_TYPE")
   (values
-    '("compile" "GST_GL_SHADER_ERROR_COMPILE")
-    '("link" "GST_GL_SHADER_ERROR_LINK")
-    '("program" "GST_GL_SHADER_ERROR_PROGRAM")
+    '("none" "GST_GL_QUERY_NONE")
+    '("time-elapsed" "GST_GL_QUERY_TIME_ELAPSED")
+    '("timestamp" "GST_GL_QUERY_TIMESTAMP")
   )
 )
 
-(define-enum GLShaderSourceType
+(define-enum GLSLError
+  (in-module "Gst")
+  (c-name "GstGLSLError")
+  (gtype-id "GST_TYPE_GLSL_ERROR")
+  (values
+    '("compile" "GST_GLSL_ERROR_COMPILE")
+    '("link" "GST_GLSL_ERROR_LINK")
+    '("program" "GST_GLSL_ERROR_PROGRAM")
+  )
+)
+
+(define-enum GLSLVersion
+  (in-module "Gst")
+  (c-name "GstGLSLVersion")
+  (gtype-id "GST_TYPE_GLSL_VERSION")
+  (values
+    '("none" "GST_GLSL_VERSION_NONE")
+    '("100" "GST_GLSL_VERSION_100")
+    '("110" "GST_GLSL_VERSION_110")
+    '("120" "GST_GLSL_VERSION_120")
+    '("130" "GST_GLSL_VERSION_130")
+    '("140" "GST_GLSL_VERSION_140")
+    '("150" "GST_GLSL_VERSION_150")
+    '("300" "GST_GLSL_VERSION_300")
+    '("310" "GST_GLSL_VERSION_310")
+    '("320" "GST_GLSL_VERSION_320")
+    '("330" "GST_GLSL_VERSION_330")
+    '("400" "GST_GLSL_VERSION_400")
+    '("410" "GST_GLSL_VERSION_410")
+    '("420" "GST_GLSL_VERSION_420")
+    '("430" "GST_GLSL_VERSION_430")
+    '("440" "GST_GLSL_VERSION_440")
+    '("450" "GST_GLSL_VERSION_450")
+    '("any" "GST_GLSL_VERSION_ANY")
+  )
+)
+
+(define-flags GLSLProfile
   (in-module "Gst")
-  (c-name "GstGLShaderSourceType")
-  (gtype-id "GST_TYPE_GL_SHADER_SOURCE_TYPE")
+  (c-name "GstGLSLProfile")
+  (gtype-id "GST_TYPE_GLSL_PROFILE")
   (values
-    '("fragment-source" "GST_GL_SHADER_FRAGMENT_SOURCE")
-    '("vertex-source" "GST_GL_SHADER_VERTEX_SOURCE")
+    '("none" "GST_GLSL_PROFILE_NONE")
+    '("es" "GST_GLSL_PROFILE_ES")
+    '("core" "GST_GLSL_PROFILE_CORE")
+    '("compatibility" "GST_GLSL_PROFILE_COMPATIBILITY")
+    '("any" "GST_GLSL_PROFILE_ANY")
   )
 )
 
@@ -1431,6 +1497,15 @@
   )
 )
 
+(define-method find_stream_for_pad
+  (of-object "GstAdaptiveDemux")
+  (c-name "gst_adaptive_demux_find_stream_for_pad")
+  (return-type "GstAdaptiveDemuxStream*")
+  (parameters
+    '("GstPad*" "pad")
+  )
+)
+
 (define-method set_caps
   (of-object "GstAdaptiveDemuxStream")
   (c-name "gst_adaptive_demux_stream_set_caps")
@@ -1483,16 +1558,6 @@
   )
 )
 
-(define-method stream_advance_fragment_unlocked
-  (of-object "GstAdaptiveDemux")
-  (c-name "gst_adaptive_demux_stream_advance_fragment_unlocked")
-  (return-type "GstFlowReturn")
-  (parameters
-    '("GstAdaptiveDemuxStream*" "stream")
-    '("GstClockTime" "duration")
-  )
-)
-
 
 
 ;; From gstaggregator.h
@@ -1684,26 +1749,6 @@
 
 ;; From dboolhuff.h
 
-(define-function vp8dx_start_decode
-  (c-name "vp8dx_start_decode")
-  (return-type "int")
-  (parameters
-    '("BOOL_DECODER*" "br")
-    '("const-unsigned-char*" "source")
-    '("unsigned-int" "source_sz")
-    '("vp8_decrypt_cb*" "decrypt_cb")
-    '("void*" "decrypt_state")
-  )
-)
-
-(define-function vp8dx_bool_decoder_fill
-  (c-name "vp8dx_bool_decoder_fill")
-  (return-type "none")
-  (parameters
-    '("BOOL_DECODER*" "br")
-  )
-)
-
 (define-function vp8dx_decode_bool
   (c-name "vp8dx_decode_bool")
   (return-type "int")
@@ -2147,6 +2192,42 @@
   )
 )
 
+(define-function gst_h265_quant_matrix_4x4_get_uprightdiagonal_from_raster
+  (c-name "gst_h265_quant_matrix_4x4_get_uprightdiagonal_from_raster")
+  (return-type "none")
+  (parameters
+    '("guint8" "out_quant[16]")
+    '("const-guint8" "quant[16]")
+  )
+)
+
+(define-function gst_h265_quant_matrix_4x4_get_raster_from_uprightdiagonal
+  (c-name "gst_h265_quant_matrix_4x4_get_raster_from_uprightdiagonal")
+  (return-type "none")
+  (parameters
+    '("guint8" "out_quant[16]")
+    '("const-guint8" "quant[16]")
+  )
+)
+
+(define-function gst_h265_quant_matrix_8x8_get_uprightdiagonal_from_raster
+  (c-name "gst_h265_quant_matrix_8x8_get_uprightdiagonal_from_raster")
+  (return-type "none")
+  (parameters
+    '("guint8" "out_quant[64]")
+    '("const-guint8" "quant[64]")
+  )
+)
+
+(define-function gst_h265_quant_matrix_8x8_get_raster_from_uprightdiagonal
+  (c-name "gst_h265_quant_matrix_8x8_get_raster_from_uprightdiagonal")
+  (return-type "none")
+  (parameters
+    '("guint8" "out_quant[64]")
+    '("const-guint8" "quant[64]")
+  )
+)
+
 
 
 ;; From gstjpegparser.h
@@ -2776,107 +2857,40 @@
 
 
 
-;; From nalutils.h
+;; From gstvp9parser.h
 
-(define-function ceil_log2
-  (c-name "ceil_log2")
-  (return-type "guint")
-  (parameters
-    '("guint32" "v")
-  )
+(define-function gst_vp9_parser_new
+  (c-name "gst_vp9_parser_new")
+  (is-constructor-of "GstVp9Parser")
+  (return-type "GstVp9Parser*")
 )
 
-(define-method init
-  (of-object "NalReader")
-  (c-name "nal_reader_init")
-  (return-type "none")
+(define-method parse_frame_header
+  (of-object "GstVp9Parser")
+  (c-name "gst_vp9_parser_parse_frame_header")
+  (return-type "GstVp9ParserResult")
   (parameters
+    '("GstVp9FrameHdr*" "frame_hdr")
     '("const-guint8*" "data")
-    '("guint" "size")
-  )
-)
-
-(define-method read
-  (of-object "NalReader")
-  (c-name "nal_reader_read")
-  (return-type "gboolean")
-  (parameters
-    '("guint" "nbits")
+    '("gsize" "size")
   )
 )
 
-(define-method skip
-  (of-object "NalReader")
-  (c-name "nal_reader_skip")
-  (return-type "gboolean")
-  (parameters
-    '("guint" "nbits")
-  )
+(define-method free
+  (of-object "GstVp9Parser")
+  (c-name "gst_vp9_parser_free")
+  (return-type "none")
 )
 
-(define-method skip_long
-  (of-object "NalReader")
-  (c-name "nal_reader_skip_long")
-  (return-type "gboolean")
-  (parameters
-    '("guint" "nbits")
-  )
-)
 
-(define-method get_pos
-  (of-object "NalReader")
-  (c-name "nal_reader_get_pos")
-  (return-type "guint")
-)
 
-(define-method get_remaining
-  (of-object "NalReader")
-  (c-name "nal_reader_get_remaining")
-  (return-type "guint")
-)
+;; From nalutils.h
 
-(define-method get_epb_count
-  (of-object "NalReader")
-  (c-name "nal_reader_get_epb_count")
+(define-function ceil_log2
+  (c-name "ceil_log2")
   (return-type "guint")
-)
-
-(define-method is_byte_aligned
-  (of-object "NalReader")
-  (c-name "nal_reader_is_byte_aligned")
-  (return-type "gboolean")
-)
-
-(define-method has_more_data
-  (of-object "NalReader")
-  (c-name "nal_reader_has_more_data")
-  (return-type "gboolean")
-)
-
-(define-method get_ue
-  (of-object "NalReader")
-  (c-name "nal_reader_get_ue")
-  (return-type "gboolean")
   (parameters
-    '("guint32*" "val")
-  )
-)
-
-(define-method get_se
-  (of-object "NalReader")
-  (c-name "nal_reader_get_se")
-  (return-type "gboolean")
-  (parameters
-    '("gint32*" "val")
-  )
-)
-
-(define-function scan_for_start_codes
-  (c-name "scan_for_start_codes")
-  (return-type "gint")
-  (parameters
-    '("const-guint8*" "data")
-    '("guint" "size")
+    '("guint32" "v")
   )
 )
 
@@ -2884,57 +2898,13 @@
 
 ;; From parserutils.h
 
-(define-function decode_vlc
-  (c-name "decode_vlc")
-  (return-type "gboolean")
-  (parameters
-    '("GstBitReader*" "br")
-    '("guint*" "res")
-    '("const-VLCTable*" "table")
-    '("guint" "length")
-  )
-)
-
 
 
 ;; From vp8utils.h
 
-(define-function gst_vp8_token_update_probs_init
-  (c-name "gst_vp8_token_update_probs_init")
-  (return-type "none")
-  (parameters
-    '("GstVp8TokenProbs*" "probs")
-  )
-)
 
-(define-method init_defaults
-  (of-object "GstVp8TokenProbs")
-  (c-name "gst_vp8_token_probs_init_defaults")
-  (return-type "none")
-)
 
-(define-function gst_vp8_mv_update_probs_init
-  (c-name "gst_vp8_mv_update_probs_init")
-  (return-type "none")
-  (parameters
-    '("GstVp8MvProbs*" "probs")
-  )
-)
-
-(define-method init_defaults
-  (of-object "GstVp8MvProbs")
-  (c-name "gst_vp8_mv_probs_init_defaults")
-  (return-type "none")
-)
-
-(define-method init_defaults
-  (of-object "GstVp8ModeProbs")
-  (c-name "gst_vp8_mode_probs_init_defaults")
-  (return-type "none")
-  (parameters
-    '("gboolean" "key_frame")
-  )
-)
+;; From vp9utils.h
 
 
 
@@ -2974,25 +2944,85 @@
 
 
 
-;; From gstglbasebuffer.h
+;; From gstglbasefilter.h
+
+(define-function gst_gl_base_filter_get_type
+  (c-name "gst_gl_base_filter_get_type")
+  (return-type "GType")
+)
+
+
+
+;; From gstglbasememory.h
 
-(define-function gst_gl_base_buffer_allocator_get_type
-  (c-name "gst_gl_base_buffer_allocator_get_type")
+(define-function gst_gl_base_memory_allocator_get_type
+  (c-name "gst_gl_base_memory_allocator_get_type")
   (return-type "GType")
 )
 
-(define-function gst_gl_base_buffer_error_quark
-  (c-name "gst_gl_base_buffer_error_quark")
+(define-function gst_gl_base_memory_error_quark
+  (c-name "gst_gl_base_memory_error_quark")
   (return-type "GQuark")
 )
 
-(define-function gst_gl_base_buffer_init_once
-  (c-name "gst_gl_base_buffer_init_once")
+(define-function gst_gl_allocation_params_get_type
+  (c-name "gst_gl_allocation_params_get_type")
+  (return-type "GType")
+)
+
+(define-method init
+  (of-object "GstGLAllocationParams")
+  (c-name "gst_gl_allocation_params_init")
+  (return-type "gboolean")
+  (parameters
+    '("gsize" "struct_size")
+    '("guint" "alloc_flags")
+    '("GstGLAllocationParamsCopyFunc" "copy")
+    '("GstGLAllocationParamsFreeFunc" "free")
+    '("GstGLContext*" "context")
+    '("gsize" "alloc_size")
+    '("GstAllocationParams*" "alloc_params")
+    '("gpointer" "wrapped_data")
+    '("guint" "gl_handle")
+    '("gpointer" "user_data")
+    '("GDestroyNotify" "notify")
+  )
+)
+
+(define-method copy
+  (of-object "GstGLAllocationParams")
+  (c-name "gst_gl_allocation_params_copy")
+  (return-type "GstGLAllocationParams*")
+)
+
+(define-method free
+  (of-object "GstGLAllocationParams")
+  (c-name "gst_gl_allocation_params_free")
+  (return-type "none")
+)
+
+(define-method free_data
+  (of-object "GstGLAllocationParams")
+  (c-name "gst_gl_allocation_params_free_data")
+  (return-type "none")
+)
+
+(define-method copy_data
+  (of-object "GstGLAllocationParams")
+  (c-name "gst_gl_allocation_params_copy_data")
+  (return-type "none")
+  (parameters
+    '("GstGLAllocationParams*" "dest")
+  )
+)
+
+(define-function gst_gl_base_memory_init_once
+  (c-name "gst_gl_base_memory_init_once")
   (return-type "none")
 )
 
-(define-function gst_is_gl_base_buffer
-  (c-name "gst_is_gl_base_buffer")
+(define-function gst_is_gl_base_memory
+  (c-name "gst_is_gl_base_memory")
   (return-type "gboolean")
   (parameters
     '("GstMemory*" "mem")
@@ -3000,55 +3030,93 @@
 )
 
 (define-method init
-  (of-object "GstGLBaseBuffer")
-  (c-name "gst_gl_base_buffer_init")
+  (of-object "GstGLBaseMemory")
+  (c-name "gst_gl_base_memory_init")
   (return-type "none")
   (parameters
     '("GstAllocator*" "allocator")
     '("GstMemory*" "parent")
     '("GstGLContext*" "context")
     '("GstAllocationParams*" "params")
-    '("gsize" "maxsize")
+    '("gsize" "size")
+    '("gpointer" "user_data")
+    '("GDestroyNotify" "notify")
   )
 )
 
 (define-method alloc_data
-  (of-object "GstGLBaseBuffer")
-  (c-name "gst_gl_base_buffer_alloc_data")
-  (return-type "GstGLBaseBuffer*")
+  (of-object "GstGLBaseMemory")
+  (c-name "gst_gl_base_memory_alloc_data")
+  (return-type "gboolean")
 )
 
-(define-method copy_buffer_sub_data
-  (of-object "GstGLBaseBuffer")
-  (c-name "gst_gl_base_buffer_copy_buffer_sub_data")
+(define-method memcpy
+  (of-object "GstGLBaseMemory")
+  (c-name "gst_gl_base_memory_memcpy")
   (return-type "gboolean")
   (parameters
-    '("GstGLBaseBuffer*" "dest")
+    '("GstGLBaseMemory*" "dest")
     '("gssize" "offset")
     '("gssize" "size")
   )
 )
 
-(define-method memcpy
-  (of-object "GstGLBaseBuffer")
-  (c-name "gst_gl_base_buffer_memcpy")
-  (return-type "gboolean")
+(define-function gst_gl_base_memory_alloc
+  (c-name "gst_gl_base_memory_alloc")
+  (return-type "GstGLBaseMemory*")
   (parameters
-    '("GstGLBaseBuffer*" "dest")
-    '("gssize" "offset")
-    '("gssize" "size")
+    '("GstGLBaseMemoryAllocator*" "allocator")
+    '("GstGLAllocationParams*" "params")
   )
 )
 
 
 
-;; From gstglbasefilter.h
+;; From gstglbuffer.h
 
-(define-function gst_gl_base_filter_get_type
-  (c-name "gst_gl_base_filter_get_type")
+(define-function gst_gl_buffer_allocator_get_type
+  (c-name "gst_gl_buffer_allocator_get_type")
   (return-type "GType")
 )
 
+(define-function gst_gl_buffer_allocation_params_new
+  (c-name "gst_gl_buffer_allocation_params_new")
+  (is-constructor-of "GstGlBufferAllocationParams")
+  (return-type "GstGLBufferAllocationParams*")
+  (parameters
+    '("GstGLContext*" "context")
+    '("gsize" "alloc_size")
+    '("GstAllocationParams*" "alloc_params")
+    '("guint" "gl_target")
+    '("guint" "gl_usage")
+  )
+)
+
+(define-function gst_gl_buffer_init_once
+  (c-name "gst_gl_buffer_init_once")
+  (return-type "none")
+)
+
+(define-function gst_is_gl_buffer
+  (c-name "gst_is_gl_buffer")
+  (return-type "gboolean")
+  (parameters
+    '("GstMemory*" "mem")
+  )
+)
+
+(define-function gst_gl_buffer_alloc
+  (c-name "gst_gl_buffer_alloc")
+  (return-type "GstGLBuffer*")
+  (parameters
+    '("GstGLContext*" "context")
+    '("guint" "gl_target")
+    '("guint" "gl_usage")
+    '("GstAllocationParams*" "params")
+    '("gsize" "maxsize")
+  )
+)
+
 
 
 ;; From gstglbufferpool.h
@@ -3076,6 +3144,23 @@
   )
 )
 
+(define-function gst_buffer_pool_config_get_gl_allocation_params
+  (c-name "gst_buffer_pool_config_get_gl_allocation_params")
+  (return-type "GstGLAllocationParams*")
+  (parameters
+    '("GstStructure*" "config")
+  )
+)
+
+(define-function gst_buffer_pool_config_set_gl_allocation_params
+  (c-name "gst_buffer_pool_config_set_gl_allocation_params")
+  (return-type "none")
+  (parameters
+    '("GstStructure*" "config")
+    '("GstGLAllocationParams*" "params")
+  )
+)
+
 
 
 ;; From gstglcolorconvert.h
@@ -3105,6 +3190,17 @@
   )
 )
 
+(define-function gst_gl_color_convert_fixate_caps
+  (c-name "gst_gl_color_convert_fixate_caps")
+  (return-type "GstCaps*")
+  (parameters
+    '("GstGLContext*" "convert")
+    '("GstPadDirection" "direction")
+    '("GstCaps*" "caps")
+    '("GstCaps*" "other")
+  )
+)
+
 (define-method set_caps
   (of-object "GstGLColorConvert")
   (c-name "gst_gl_color_convert_set_caps")
@@ -3115,6 +3211,15 @@
   )
 )
 
+(define-method decide_allocation
+  (of-object "GstGLColorConvert")
+  (c-name "gst_gl_color_convert_decide_allocation")
+  (return-type "gboolean")
+  (parameters
+    '("GstQuery*" "query")
+  )
+)
+
 (define-method perform
   (of-object "GstGLColorConvert")
   (c-name "gst_gl_color_convert_perform")
@@ -3253,6 +3358,7 @@
   (c-name "gst_gl_context_get_proc_address_with_platform")
   (return-type "gpointer")
   (parameters
+    '("GstGLPlatform" "context_type")
     '("GstGLAPI" "gl_api")
     '("const-gchar*" "name")
   )
@@ -3307,7 +3413,7 @@
   (c-name "gst_gl_context_get_current_gl_context")
   (return-type "guintptr")
   (parameters
-    '("GstGLPlatform" "platform")
+    '("GstGLPlatform" "context_type")
   )
 )
 
@@ -3321,6 +3427,21 @@
   )
 )
 
+(define-method is_shared
+  (of-object "GstGLContext")
+  (c-name "gst_gl_context_is_shared")
+  (return-type "gboolean")
+)
+
+(define-method set_shared_with
+  (of-object "GstGLContext")
+  (c-name "gst_gl_context_set_shared_with")
+  (return-type "none")
+  (parameters
+    '("GstGLContext*" "share")
+  )
+)
+
 (define-method fill_info
   (of-object "GstGLContext")
   (c-name "gst_gl_context_fill_info")
@@ -3342,6 +3463,138 @@
 
 
 
+;; From gstglcontrolbindingproxy.h
+
+(define-function gst_gl_control_binding_proxy_get_type
+  (c-name "gst_gl_control_binding_proxy_get_type")
+  (return-type "GType")
+)
+
+(define-function gst_gl_control_binding_proxy_new
+  (c-name "gst_gl_control_binding_proxy_new")
+  (is-constructor-of "GstGlControlBindingProxy")
+  (return-type "GstControlBinding*")
+  (parameters
+    '("GstObject*" "object")
+    '("const-gchar*" "property_name")
+    '("GstObject*" "ref_object")
+    '("const-gchar*" "ref_property_name")
+  )
+)
+
+(define-function gst_gl_object_add_control_binding_proxy
+  (c-name "gst_gl_object_add_control_binding_proxy")
+  (return-type "none")
+  (parameters
+    '("GstObject*" "object")
+    '("GstObject*" "ref_object")
+    '("const-gchar*" "prop")
+  )
+)
+
+
+
+;; From gstgldebug.h
+
+(define-function gst_gl_async_debug_new
+  (c-name "gst_gl_async_debug_new")
+  (is-constructor-of "GstGlAsyncDebug")
+  (return-type "GstGLAsyncDebug*")
+)
+
+(define-method free
+  (of-object "GstGLAsyncDebug")
+  (c-name "gst_gl_async_debug_free")
+  (return-type "none")
+)
+
+(define-method init
+  (of-object "GstGLAsyncDebug")
+  (c-name "gst_gl_async_debug_init")
+  (return-type "none")
+)
+
+(define-method unset
+  (of-object "GstGLAsyncDebug")
+  (c-name "gst_gl_async_debug_unset")
+  (return-type "none")
+)
+
+(define-method freeze
+  (of-object "GstGLAsyncDebug")
+  (c-name "gst_gl_async_debug_freeze")
+  (return-type "none")
+)
+
+(define-method thaw
+  (of-object "GstGLAsyncDebug")
+  (c-name "gst_gl_async_debug_thaw")
+  (return-type "none")
+)
+
+(define-function GST_GL_ASYNC_CAT_LEVEL_LOG
+  (c-name "GST_GL_ASYNC_CAT_LEVEL_LOG")
+  (return-type "none")
+  (parameters
+    '("GstGLAsyncDebug*" "ad")
+    '("GstDebugCategory*" "cat")
+    '("GstDebugLevel" "level")
+    '("GObject*" "object")
+    '("const-gchar*" "format")
+  )
+  (varargs #t)
+)
+
+(define-function gst_gl_insert_debug_marker
+  (c-name "gst_gl_insert_debug_marker")
+  (return-type "none")
+  (parameters
+    '("GstGLContext*" "context")
+    '("const-gchar*" "format")
+  )
+  (varargs #t)
+)
+
+(define-method output_log_msg
+  (of-object "GstGLAsyncDebug")
+  (c-name "gst_gl_async_debug_output_log_msg")
+  (return-type "none")
+)
+
+(define-method store_log_msg
+  (of-object "GstGLAsyncDebug")
+  (c-name "gst_gl_async_debug_store_log_msg")
+  (return-type "none")
+  (parameters
+    '("GstDebugCategory*" "cat")
+    '("GstDebugLevel" "level")
+    '("const-gchar*" "file")
+    '("const-gchar*" "function")
+    '("gint" "line")
+    '("GObject*" "object")
+    '("const-gchar*" "format")
+  )
+  (varargs #t)
+)
+
+(define-method store_log_msg_valist
+  (of-object "GstGLAsyncDebug")
+  (c-name "gst_gl_async_debug_store_log_msg_valist")
+  (return-type "none")
+  (parameters
+    '("GstDebugCategory*" "cat")
+    '("GstDebugLevel" "level")
+    '("const-gchar*" "file")
+    '("const-gchar*" "function")
+    '("gint" "line")
+    '("GObject*" "object")
+    '("const-gchar*" "format")
+    '("va_list" "varargs")
+  )
+)
+
+
+
 ;; From gstgldisplay.h
 
 (define-function gst_gl_display_get_type
@@ -3372,7 +3625,7 @@
   (c-name "gst_gl_display_filter_gl_api")
   (return-type "none")
   (parameters
-    '("GstGLAPI" "api")
+    '("GstGLAPI" "gl_api")
   )
 )
 
@@ -3437,62 +3690,7 @@
 
 
 
-;; From gstgldownload.h
-
-(define-function gst_gl_download_get_type
-  (c-name "gst_gl_download_get_type")
-  (return-type "GType")
-)
-
-(define-function gst_gl_download_new
-  (c-name "gst_gl_download_new")
-  (is-constructor-of "GstGlDownload")
-  (return-type "GstGLDownload*")
-  (parameters
-    '("GstGLContext*" "context")
-  )
-)
-
-(define-method set_format
-  (of-object "GstGLDownload")
-  (c-name "gst_gl_download_set_format")
-  (return-type "none")
-  (parameters
-    '("GstVideoInfo*" "out_info")
-  )
-)
-
-(define-function gst_gl_download_transform_caps
-  (c-name "gst_gl_download_transform_caps")
-  (return-type "GstCaps*")
-  (parameters
-    '("GstGLContext*" "convert")
-    '("GstPadDirection" "direction")
-    '("GstCaps*" "caps")
-    '("GstCaps*" "filter")
-  )
-)
-
-(define-method perform_with_data
-  (of-object "GstGLDownload")
-  (c-name "gst_gl_download_perform_with_data")
-  (return-type "gboolean")
-  (parameters
-    '("GLuint" "texture_id")
-    '("GLuint" "texture_target")
-    '("gpointer" "data[GST_VIDEO_MAX_PLANES]")
-  )
-)
-
-(define-method perform
-  (of-object "GstGLDownload")
-  (c-name "gst_gl_download_perform")
-  (return-type "gboolean")
-  (parameters
-    '("GstBuffer*" "inbuf")
-    '("GstBuffer*" "outbuf")
-  )
-)
+;; From gstgl_enums.h
 
 
 
@@ -3564,6 +3762,89 @@
 
 
 
+;; From gstglformat.h
+
+(define-function gst_gl_format_type_n_bytes
+  (c-name "gst_gl_format_type_n_bytes")
+  (return-type "guint")
+  (parameters
+    '("guint" "format")
+    '("guint" "type")
+  )
+)
+
+(define-function gst_gl_texture_type_n_bytes
+  (c-name "gst_gl_texture_type_n_bytes")
+  (return-type "guint")
+  (parameters
+    '("GstVideoGLTextureType" "tex_format")
+  )
+)
+
+(define-function gst_gl_format_from_gl_texture_type
+  (c-name "gst_gl_format_from_gl_texture_type")
+  (return-type "guint")
+  (parameters
+    '("GstVideoGLTextureType" "tex_format")
+  )
+)
+
+(define-function gst_gl_texture_type_from_format
+  (c-name "gst_gl_texture_type_from_format")
+  (return-type "GstVideoGLTextureType")
+  (parameters
+    '("GstGLContext*" "context")
+    '("GstVideoFormat" "v_format")
+    '("guint" "plane")
+  )
+)
+
+(define-function gst_gl_sized_gl_format_from_gl_format_type
+  (c-name "gst_gl_sized_gl_format_from_gl_format_type")
+  (return-type "guint")
+  (parameters
+    '("GstGLContext*" "context")
+    '("guint" "format")
+    '("guint" "type")
+  )
+)
+
+(define-function gst_gl_texture_target_from_string
+  (c-name "gst_gl_texture_target_from_string")
+  (return-type "GstGLTextureTarget")
+  (parameters
+    '("const-gchar*" "str")
+  )
+)
+
+(define-method to_string
+  (of-object "GstGLTextureTarget")
+  (c-name "gst_gl_texture_target_to_string")
+  (return-type "const-gchar*")
+)
+
+(define-method to_gl
+  (of-object "GstGLTextureTarget")
+  (c-name "gst_gl_texture_target_to_gl")
+  (return-type "guint")
+)
+
+(define-function gst_gl_texture_target_from_gl
+  (c-name "gst_gl_texture_target_from_gl")
+  (return-type "GstGLTextureTarget")
+  (parameters
+    '("guint" "target")
+  )
+)
+
+(define-method to_buffer_pool_option
+  (of-object "GstGLTextureTarget")
+  (c-name "gst_gl_texture_target_to_buffer_pool_option")
+  (return-type "const-gchar*")
+)
+
+
+
 ;; From gstglframebuffer.h
 
 (define-function gst_gl_framebuffer_get_type
@@ -3625,114 +3906,166 @@
 
 ;; From gstglmemory.h
 
-(define-function gst_gl_allocator_get_type
-  (c-name "gst_gl_allocator_get_type")
+(define-function gst_gl_memory_allocator_get_type
+  (c-name "gst_gl_memory_allocator_get_type")
   (return-type "GType")
 )
 
-(define-function gst_gl_memory_init
-  (c-name "gst_gl_memory_init")
-  (return-type "none")
-)
-
-(define-function gst_is_gl_memory
-  (c-name "gst_is_gl_memory")
+(define-method init_full
+  (of-object "GstGLVideoAllocationParams")
+  (c-name "gst_gl_video_allocation_params_init_full")
   (return-type "gboolean")
   (parameters
-    '("GstMemory*" "mem")
+    '("gsize" "struct_size")
+    '("guint" "alloc_flags")
+    '("GstGLAllocationParamsCopyFunc" "copy")
+    '("GstGLAllocationParamsFreeFunc" "free")
+    '("GstGLContext*" "context")
+    '("GstAllocationParams*" "alloc_params")
+    '("GstVideoInfo*" "v_info")
+    '("guint" "plane")
+    '("GstVideoAlignment*" "valign")
+    '("GstGLTextureTarget" "target")
+    '("gpointer" "wrapped_data")
+    '("guint" "gl_handle")
+    '("gpointer" "user_data")
+    '("GDestroyNotify" "notify")
   )
 )
 
-(define-function gst_gl_memory_alloc
-  (c-name "gst_gl_memory_alloc")
-  (return-type "GstMemory*")
+(define-function gst_gl_video_allocation_params_new
+  (c-name "gst_gl_video_allocation_params_new")
+  (is-constructor-of "GstGlVideoAllocationParams")
+  (return-type "GstGLVideoAllocationParams*")
   (parameters
     '("GstGLContext*" "context")
-    '("GstAllocationParams*" "params")
-    '("GstVideoInfo*" "info")
+    '("GstAllocationParams*" "alloc_params")
+    '("GstVideoInfo*" "v_info")
     '("guint" "plane")
     '("GstVideoAlignment*" "valign")
+    '("GstGLTextureTarget" "target")
   )
 )
 
-(define-function gst_gl_memory_wrapped
-  (c-name "gst_gl_memory_wrapped")
-  (return-type "GstGLMemory*")
+(define-function gst_gl_video_allocation_params_new_wrapped_data
+  (c-name "gst_gl_video_allocation_params_new_wrapped_data")
+  (return-type "GstGLVideoAllocationParams*")
   (parameters
     '("GstGLContext*" "context")
-    '("GstVideoInfo*" "info")
+    '("GstAllocationParams*" "alloc_params")
+    '("GstVideoInfo*" "v_info")
     '("guint" "plane")
     '("GstVideoAlignment*" "valign")
-    '("gpointer" "data")
+    '("GstGLTextureTarget" "target")
+    '("gpointer" "wrapped_data")
     '("gpointer" "user_data")
     '("GDestroyNotify" "notify")
   )
 )
 
-(define-function gst_gl_memory_wrapped_texture
-  (c-name "gst_gl_memory_wrapped_texture")
-  (return-type "GstGLMemory*")
+(define-function gst_gl_video_allocation_params_new_wrapped_texture
+  (c-name "gst_gl_video_allocation_params_new_wrapped_texture")
+  (return-type "GstGLVideoAllocationParams*")
   (parameters
     '("GstGLContext*" "context")
-    '("guint" "texture_id")
-    '("guint" "texture_target")
-    '("GstVideoInfo*" "info")
+    '("GstAllocationParams*" "alloc_params")
+    '("GstVideoInfo*" "v_info")
     '("guint" "plane")
     '("GstVideoAlignment*" "valign")
+    '("GstGLTextureTarget" "target")
+    '("guint" "tex_id")
     '("gpointer" "user_data")
     '("GDestroyNotify" "notify")
   )
 )
 
-(define-method download_transfer
-  (of-object "GstGLMemory")
-  (c-name "gst_gl_memory_download_transfer")
+(define-method free_data
+  (of-object "GstGLVideoAllocationParams")
+  (c-name "gst_gl_video_allocation_params_free_data")
   (return-type "none")
 )
 
-(define-method upload_transfer
+(define-method copy_data
+  (of-object "GstGLVideoAllocationParams")
+  (c-name "gst_gl_video_allocation_params_copy_data")
+  (return-type "none")
+  (parameters
+    '("GstGLVideoAllocationParams*" "dest_vid")
+  )
+)
+
+(define-function gst_gl_memory_init_once
+  (c-name "gst_gl_memory_init_once")
+  (return-type "none")
+)
+
+(define-function gst_is_gl_memory
+  (c-name "gst_is_gl_memory")
+  (return-type "gboolean")
+  (parameters
+    '("GstMemory*" "mem")
+  )
+)
+
+(define-method init
   (of-object "GstGLMemory")
-  (c-name "gst_gl_memory_upload_transfer")
+  (c-name "gst_gl_memory_init")
   (return-type "none")
+  (parameters
+    '("GstAllocator*" "allocator")
+    '("GstMemory*" "parent")
+    '("GstGLContext*" "context")
+    '("GstGLTextureTarget" "target")
+    '("GstAllocationParams*" "params")
+    '("GstVideoInfo*" "info")
+    '("guint" "plane")
+    '("GstVideoAlignment*" "valign")
+    '("gpointer" "user_data")
+    '("GDestroyNotify" "notify")
+  )
 )
 
-(define-method copy_into_texture
+(define-method copy_into
   (of-object "GstGLMemory")
-  (c-name "gst_gl_memory_copy_into_texture")
+  (c-name "gst_gl_memory_copy_into")
   (return-type "gboolean")
   (parameters
     '("guint" "tex_id")
+    '("GstGLTextureTarget" "target")
     '("GstVideoGLTextureType" "tex_type")
     '("gint" "width")
     '("gint" "height")
-    '("gint" "stride")
-    '("gboolean" "respecify")
   )
 )
 
-(define-function gst_gl_memory_setup_buffer
-  (c-name "gst_gl_memory_setup_buffer")
+(define-method copy_teximage
+  (of-object "GstGLMemory")
+  (c-name "gst_gl_memory_copy_teximage")
   (return-type "gboolean")
   (parameters
-    '("GstGLContext*" "context")
-    '("GstAllocationParams*" "params")
-    '("GstVideoInfo*" "info")
-    '("GstVideoAlignment*" "valign")
-    '("GstBuffer*" "buffer")
+    '("guint" "tex_id")
+    '("GstGLTextureTarget" "out_target")
+    '("GstVideoGLTextureType" "out_tex_type")
+    '("gint" "width")
+    '("gint" "height")
   )
 )
 
-(define-function gst_gl_memory_setup_wrapped
-  (c-name "gst_gl_memory_setup_wrapped")
+(define-method read_pixels
+  (of-object "GstGLMemory")
+  (c-name "gst_gl_memory_read_pixels")
   (return-type "gboolean")
   (parameters
-    '("GstGLContext*" "context")
-    '("GstVideoInfo*" "info")
-    '("GstVideoAlignment*" "valign")
-    '("gpointer" "data[GST_VIDEO_MAX_PLANES]")
-    '("GstGLMemory*" "textures[GST_VIDEO_MAX_PLANES]")
-    '("gpointer" "user_data")
-    '("GDestroyNotify" "notify")
+    '("gpointer" "read_pointer")
+  )
+)
+
+(define-method texsubimage
+  (of-object "GstGLMemory")
+  (c-name "gst_gl_memory_texsubimage")
+  (return-type "none")
+  (parameters
+    '("gpointer" "read_pointer")
   )
 )
 
@@ -3748,31 +4081,88 @@
   (return-type "gint")
 )
 
-(define-function gst_gl_texture_type_from_format
-  (c-name "gst_gl_texture_type_from_format")
+(define-method get_texture_type
+  (of-object "GstGLMemory")
+  (c-name "gst_gl_memory_get_texture_type")
   (return-type "GstVideoGLTextureType")
+)
+
+(define-method get_texture_target
+  (of-object "GstGLMemory")
+  (c-name "gst_gl_memory_get_texture_target")
+  (return-type "GstGLTextureTarget")
+)
+
+(define-method get_texture_id
+  (of-object "GstGLMemory")
+  (c-name "gst_gl_memory_get_texture_id")
+  (return-type "guint")
+)
+
+(define-function gst_gl_memory_setup_buffer
+  (c-name "gst_gl_memory_setup_buffer")
+  (return-type "gboolean")
+  (parameters
+    '("GstGLMemoryAllocator*" "allocator")
+    '("GstBuffer*" "buffer")
+    '("GstGLVideoAllocationParams*" "params")
+  )
+)
+
+(define-function gst_gl_memory_allocator_get_default
+  (c-name "gst_gl_memory_allocator_get_default")
+  (return-type "GstGLMemoryAllocator*")
   (parameters
     '("GstGLContext*" "context")
-    '("GstVideoFormat" "v_format")
-    '("guint" "plane")
   )
 )
 
-(define-function gst_gl_format_from_gl_texture_type
-  (c-name "gst_gl_format_from_gl_texture_type")
-  (return-type "guint")
+
+
+;; From gstglmemorypbo.h
+
+(define-function gst_gl_memory_pbo_allocator_get_type
+  (c-name "gst_gl_memory_pbo_allocator_get_type")
+  (return-type "GType")
+)
+
+(define-function gst_gl_memory_pbo_init_once
+  (c-name "gst_gl_memory_pbo_init_once")
+  (return-type "none")
+)
+
+(define-function gst_is_gl_memory_pbo
+  (c-name "gst_is_gl_memory_pbo")
+  (return-type "gboolean")
   (parameters
-    '("GstVideoGLTextureType" "tex_format")
+    '("GstMemory*" "mem")
   )
 )
 
-(define-function gst_gl_sized_gl_format_from_gl_format_type
-  (c-name "gst_gl_sized_gl_format_from_gl_format_type")
-  (return-type "guint")
+(define-method download_transfer
+  (of-object "GstGLMemoryPBO")
+  (c-name "gst_gl_memory_pbo_download_transfer")
+  (return-type "none")
+)
+
+(define-method upload_transfer
+  (of-object "GstGLMemoryPBO")
+  (c-name "gst_gl_memory_pbo_upload_transfer")
+  (return-type "none")
+)
+
+(define-method copy_into_texture
+  (of-object "GstGLMemoryPBO")
+  (c-name "gst_gl_memory_pbo_copy_into_texture")
+  (return-type "gboolean")
   (parameters
-    '("GstGLContext*" "context")
-    '("guint" "format")
-    '("guint" "type")
+    '("guint" "tex_id")
+    '("GstGLTextureTarget" "target")
+    '("GstVideoGLTextureType" "tex_type")
+    '("gint" "width")
+    '("gint" "height")
+    '("gint" "stride")
+    '("gboolean" "respecify")
   )
 )
 
@@ -3825,149 +4215,216 @@
 
 
 
-;; From gstglshader.h
+;; From gstglquery.h
 
-(define-function gst_gl_shader_error_quark
-  (c-name "gst_gl_shader_error_quark")
-  (return-type "GQuark")
+(define-method init
+  (of-object "GstGLQuery")
+  (c-name "gst_gl_query_init")
+  (return-type "none")
+  (parameters
+    '("GstGLContext*" "context")
+    '("GstGLQueryType" "query_type")
+  )
 )
 
-(define-function gst_gl_shader_get_type
-  (c-name "gst_gl_shader_get_type")
-  (return-type "GType")
+(define-method unset
+  (of-object "GstGLQuery")
+  (c-name "gst_gl_query_unset")
+  (return-type "none")
 )
 
-(define-function gst_gl_shader_new
-  (c-name "gst_gl_shader_new")
-  (is-constructor-of "GstGlShader")
-  (return-type "GstGLShader*")
+(define-function gst_gl_query_new
+  (c-name "gst_gl_query_new")
+  (is-constructor-of "GstGlQuery")
+  (return-type "GstGLQuery*")
   (parameters
     '("GstGLContext*" "context")
+    '("GstGLQueryType" "query_type")
   )
 )
 
-(define-method get_program_handle
-  (of-object "GstGLShader")
-  (c-name "gst_gl_shader_get_program_handle")
-  (return-type "int")
+(define-method free
+  (of-object "GstGLQuery")
+  (c-name "gst_gl_query_free")
+  (return-type "none")
 )
 
-(define-method set_vertex_source
-  (of-object "GstGLShader")
-  (c-name "gst_gl_shader_set_vertex_source")
+(define-method start
+  (of-object "GstGLQuery")
+  (c-name "gst_gl_query_start")
+  (return-type "none")
+)
+
+(define-method end
+  (of-object "GstGLQuery")
+  (c-name "gst_gl_query_end")
+  (return-type "none")
+)
+
+(define-method counter
+  (of-object "GstGLQuery")
+  (c-name "gst_gl_query_counter")
+  (return-type "none")
+)
+
+(define-method result
+  (of-object "GstGLQuery")
+  (c-name "gst_gl_query_result")
+  (return-type "guint64")
+)
+
+(define-method start_log
+  (of-object "GstGLQuery")
+  (c-name "gst_gl_query_start_log")
   (return-type "none")
   (parameters
-    '("const-gchar*" "src")
+    '("GstDebugCategory*" "cat")
+    '("GstDebugLevel" "level")
+    '("GObject*" "object")
+    '("const-gchar*" "format")
   )
+  (varargs #t)
 )
 
-(define-method set_fragment_source
-  (of-object "GstGLShader")
-  (c-name "gst_gl_shader_set_fragment_source")
+(define-method counter_log
+  (of-object "GstGLQuery")
+  (c-name "gst_gl_query_counter_log")
   (return-type "none")
   (parameters
-    '("const-gchar*" "src")
+    '("GstDebugCategory*" "cat")
+    '("GstDebugLevel" "level")
+    '("GObject*" "object")
+    '("const-gchar*" "format")
   )
+  (varargs #t)
 )
 
-(define-method get_vertex_source
-  (of-object "GstGLShader")
-  (c-name "gst_gl_shader_get_vertex_source")
-  (return-type "const-gchar*")
+
+
+;; From gstglshader.h
+
+(define-function gst_gl_shader_get_type
+  (c-name "gst_gl_shader_get_type")
+  (return-type "GType")
 )
 
-(define-method get_fragment_source
-  (of-object "GstGLShader")
-  (c-name "gst_gl_shader_get_fragment_source")
-  (return-type "const-gchar*")
+(define-function gst_gl_shader_new
+  (c-name "gst_gl_shader_new")
+  (is-constructor-of "GstGlShader")
+  (return-type "GstGLShader*")
+  (parameters
+    '("GstGLContext*" "context")
+  )
 )
 
-(define-method set_active
-  (of-object "GstGLShader")
-  (c-name "gst_gl_shader_set_active")
-  (return-type "none")
+(define-function gst_gl_shader_new_with_stages
+  (c-name "gst_gl_shader_new_with_stages")
+  (return-type "GstGLShader*")
   (parameters
-    '("gboolean" "active")
+    '("GstGLContext*" "context")
+    '("GError**" "error")
   )
+  (varargs #t)
 )
 
-(define-method is_compiled
-  (of-object "GstGLShader")
-  (c-name "gst_gl_shader_is_compiled")
-  (return-type "gboolean")
+(define-function gst_gl_shader_new_link_with_stages
+  (c-name "gst_gl_shader_new_link_with_stages")
+  (return-type "GstGLShader*")
+  (parameters
+    '("GstGLContext*" "context")
+    '("GError**" "error")
+  )
+  (varargs #t)
 )
 
-(define-method compile
-  (of-object "GstGLShader")
-  (c-name "gst_gl_shader_compile")
-  (return-type "gboolean")
+(define-function gst_gl_shader_new_default
+  (c-name "gst_gl_shader_new_default")
+  (return-type "GstGLShader*")
   (parameters
+    '("GstGLContext*" "context")
     '("GError**" "error")
   )
 )
 
-(define-method compile_and_check
+(define-method attach
   (of-object "GstGLShader")
-  (c-name "gst_gl_shader_compile_and_check")
+  (c-name "gst_gl_shader_attach")
   (return-type "gboolean")
   (parameters
-    '("const-gchar*" "source")
-    '("GstGLShaderSourceType" "type")
+    '("GstGLSLStage*" "stage")
   )
 )
 
-(define-method compile_all_with_attribs_and_check
+(define-method attach_unlocked
   (of-object "GstGLShader")
-  (c-name "gst_gl_shader_compile_all_with_attribs_and_check")
+  (c-name "gst_gl_shader_attach_unlocked")
   (return-type "gboolean")
   (parameters
-    '("const-gchar*" "v_src")
-    '("const-gchar*" "f_src")
-    '("const-gint" "n_attribs")
-    '("const-gchar*[]" "attrib_names")
-    '("GLint[]" "attrib_locs")
+    '("GstGLSLStage*" "stage")
   )
 )
 
-(define-method compile_with_default_f_and_check
+(define-method detach
   (of-object "GstGLShader")
-  (c-name "gst_gl_shader_compile_with_default_f_and_check")
-  (return-type "gboolean")
+  (c-name "gst_gl_shader_detach")
+  (return-type "none")
+  (parameters
+    '("GstGLSLStage*" "stage")
+  )
+)
+
+(define-method detach_unlocked
+  (of-object "GstGLShader")
+  (c-name "gst_gl_shader_detach_unlocked")
+  (return-type "none")
   (parameters
-    '("const-gchar*" "v_src")
-    '("const-gint" "n_attribs")
-    '("const-gchar*[]" "attrib_names")
-    '("GLint[]" "attrib_locs")
+    '("GstGLSLStage*" "stage")
   )
 )
 
-(define-method compile_with_default_v_and_check
+(define-method compile_attach_stage
   (of-object "GstGLShader")
-  (c-name "gst_gl_shader_compile_with_default_v_and_check")
+  (c-name "gst_gl_shader_compile_attach_stage")
   (return-type "gboolean")
   (parameters
-    '("const-gchar*" "f_src")
-    '("GLint*" "pos_loc")
-    '("GLint*" "tex_loc")
+    '("GstGLSLStage*" "stage")
+    '("GError**" "error")
   )
 )
 
-(define-method compile_with_default_vf_and_check
+(define-method link
   (of-object "GstGLShader")
-  (c-name "gst_gl_shader_compile_with_default_vf_and_check")
+  (c-name "gst_gl_shader_link")
   (return-type "gboolean")
   (parameters
-    '("GLint*" "pos_loc")
-    '("GLint*" "tex_loc")
+    '("GError**" "error")
   )
 )
 
+(define-method is_linked
+  (of-object "GstGLShader")
+  (c-name "gst_gl_shader_is_linked")
+  (return-type "gboolean")
+)
+
+(define-method get_program_handle
+  (of-object "GstGLShader")
+  (c-name "gst_gl_shader_get_program_handle")
+  (return-type "int")
+)
+
 (define-method release
   (of-object "GstGLShader")
   (c-name "gst_gl_shader_release")
   (return-type "none")
 )
 
+(define-method release_unlocked
+  (of-object "GstGLShader")
+  (c-name "gst_gl_shader_release_unlocked")
+  (return-type "none")
+)
+
 (define-method use
   (of-object "GstGLShader")
   (c-name "gst_gl_shader_use")
@@ -4289,24 +4746,208 @@
 
 
 
-;; From gstglshadervariables.h
+;; From gstglshaderstrings.h
 
-(define-method variables_parse
-  (of-object "GstGLShader")
-  (c-name "gst_gl_shadervariables_parse")
-  (return-type "int")
+
+
+;; From gstglsl.h
+
+(define-function gst_glsl_error_quark
+  (c-name "gst_glsl_error_quark")
+  (return-type "GQuark")
+)
+
+(define-function gst_glsl_version_from_string
+  (c-name "gst_glsl_version_from_string")
+  (return-type "GstGLSLVersion")
   (parameters
-    '("char*" "variables")
-    '("int-(*" "_setvariable")
+    '("const-gchar*" "string")
   )
 )
 
-(define-method variable_set
-  (of-object "GstGLShader")
-  (c-name "gst_gl_shadervariable_set")
-  (return-type "int")
+(define-method to_string
+  (of-object "GstGLSLVersion")
+  (c-name "gst_glsl_version_to_string")
+  (return-type "const-gchar*")
+)
+
+(define-function gst_glsl_profile_from_string
+  (c-name "gst_glsl_profile_from_string")
+  (return-type "GstGLSLProfile")
   (parameters
-    '("struct-gst_gl_shadervariable_desc*" "ret")
+    '("const-gchar*" "string")
+  )
+)
+
+(define-method to_string
+  (of-object "GstGLSLProfile")
+  (c-name "gst_glsl_profile_to_string")
+  (return-type "const-gchar*")
+)
+
+(define-method profile_to_string
+  (of-object "GstGLSLVersion")
+  (c-name "gst_glsl_version_profile_to_string")
+  (return-type "gchar*")
+  (parameters
+    '("GstGLSLProfile" "profile")
+  )
+)
+
+(define-function gst_glsl_version_profile_from_string
+  (c-name "gst_glsl_version_profile_from_string")
+  (return-type "gboolean")
+  (parameters
+    '("const-gchar*" "string")
+    '("GstGLSLVersion*" "version")
+    '("GstGLSLProfile*" "profile")
+  )
+)
+
+(define-function gst_glsl_string_get_version_profile
+  (c-name "gst_glsl_string_get_version_profile")
+  (return-type "gboolean")
+  (parameters
+    '("const-gchar*" "s")
+    '("GstGLSLVersion*" "version")
+    '("GstGLSLProfile*" "profile")
+  )
+)
+
+(define-function gst_gl_version_to_glsl_version
+  (c-name "gst_gl_version_to_glsl_version")
+  (return-type "GstGLSLVersion")
+  (parameters
+    '("GstGLAPI" "gl_api")
+    '("gint" "maj")
+    '("gint" "min")
+  )
+)
+
+(define-method supports_glsl_profile_version
+  (of-object "GstGLContext")
+  (c-name "gst_gl_context_supports_glsl_profile_version")
+  (return-type "gboolean")
+  (parameters
+    '("GstGLSLVersion" "version")
+    '("GstGLSLProfile" "profile")
+  )
+)
+
+
+
+;; From gstglsl_private.h
+
+(define-function GSTGLAPI
+  (c-name "GSTGLAPI")
+  (return-type "GLuint")
+  (parameters
+    '("*" "CreateProgram")
+  )
+)
+
+
+
+;; From gstglslstage.h
+
+(define-function gst_glsl_stage_get_type
+  (c-name "gst_glsl_stage_get_type")
+  (return-type "GType")
+)
+
+(define-function gst_glsl_stage_new
+  (c-name "gst_glsl_stage_new")
+  (is-constructor-of "GstGlslStage")
+  (return-type "GstGLSLStage*")
+  (parameters
+    '("GstGLContext*" "context")
+    '("guint" "type")
+  )
+)
+
+(define-function gst_glsl_stage_new_with_string
+  (c-name "gst_glsl_stage_new_with_string")
+  (return-type "GstGLSLStage*")
+  (parameters
+    '("GstGLContext*" "context")
+    '("guint" "type")
+    '("GstGLSLVersion" "version")
+    '("GstGLSLProfile" "profile")
+    '("const-gchar*" "str")
+  )
+)
+
+(define-function gst_glsl_stage_new_with_strings
+  (c-name "gst_glsl_stage_new_with_strings")
+  (return-type "GstGLSLStage*")
+  (parameters
+    '("GstGLContext*" "context")
+    '("guint" "type")
+    '("GstGLSLVersion" "version")
+    '("GstGLSLProfile" "profile")
+    '("gint" "n_strings")
+    '("const-gchar**" "str")
+  )
+)
+
+(define-function gst_glsl_stage_new_default_fragment
+  (c-name "gst_glsl_stage_new_default_fragment")
+  (return-type "GstGLSLStage*")
+  (parameters
+    '("GstGLContext*" "context")
+  )
+)
+
+(define-function gst_glsl_stage_new_default_vertex
+  (c-name "gst_glsl_stage_new_default_vertex")
+  (return-type "GstGLSLStage*")
+  (parameters
+    '("GstGLContext*" "context")
+  )
+)
+
+(define-method get_handle
+  (of-object "GstGLSLStage")
+  (c-name "gst_glsl_stage_get_handle")
+  (return-type "guint")
+)
+
+(define-method get_profile
+  (of-object "GstGLSLStage")
+  (c-name "gst_glsl_stage_get_profile")
+  (return-type "GstGLSLProfile")
+)
+
+(define-method get_version
+  (of-object "GstGLSLStage")
+  (c-name "gst_glsl_stage_get_version")
+  (return-type "GstGLSLVersion")
+)
+
+(define-method get_shader_type
+  (of-object "GstGLSLStage")
+  (c-name "gst_glsl_stage_get_shader_type")
+  (return-type "guint")
+)
+
+(define-method set_strings
+  (of-object "GstGLSLStage")
+  (c-name "gst_glsl_stage_set_strings")
+  (return-type "gboolean")
+  (parameters
+    '("GstGLSLVersion" "version")
+    '("GstGLSLProfile" "profile")
+    '("gint" "n_strings")
+    '("const-gchar**" "str")
+  )
+)
+
+(define-method compile
+  (of-object "GstGLSLStage")
+  (c-name "gst_glsl_stage_compile")
+  (return-type "gboolean")
+  (parameters
+    '("GError**" "error")
   )
 )
 
@@ -4333,6 +4974,16 @@
   )
 )
 
+(define-function gst_buffer_add_gl_sync_meta_full
+  (c-name "gst_buffer_add_gl_sync_meta_full")
+  (return-type "GstGLSyncMeta*")
+  (parameters
+    '("GstGLContext*" "context")
+    '("GstBuffer*" "buffer")
+    '("gpointer" "data")
+  )
+)
+
 (define-method set_sync_point
   (of-object "GstGLSyncMeta")
   (c-name "gst_gl_sync_meta_set_sync_point")
@@ -4351,6 +5002,15 @@
   )
 )
 
+(define-method wait_cpu
+  (of-object "GstGLSyncMeta")
+  (c-name "gst_gl_sync_meta_wait_cpu")
+  (return-type "none")
+  (parameters
+    '("GstGLContext*" "context")
+  )
+)
+
 
 
 ;; From gstglupload.h
@@ -4421,55 +5081,7 @@
   (return-type "GstGLUploadReturn")
   (parameters
     '("GstBuffer*" "buffer")
-    '("GstBuffer**" "outbuf")
-  )
-)
-
-(define-method release_buffer
-  (of-object "GstGLUpload")
-  (c-name "gst_gl_upload_release_buffer")
-  (return-type "none")
-)
-
-
-
-;; From gstgluploadmeta.h
-
-(define-function gst_gl_upload_meta_get_type
-  (c-name "gst_gl_upload_meta_get_type")
-  (return-type "GType")
-)
-
-(define-function gst_gl_upload_meta_new
-  (c-name "gst_gl_upload_meta_new")
-  (is-constructor-of "GstGlUploadMeta")
-  (return-type "GstGLUploadMeta*")
-  (parameters
-    '("GstGLContext*" "context")
-  )
-)
-
-(define-method set_format
-  (of-object "GstGLUploadMeta")
-  (c-name "gst_gl_upload_meta_set_format")
-  (return-type "none")
-  (parameters
-    '("GstVideoInfo*" "info")
-  )
-)
-
-(define-method get_format
-  (of-object "GstGLUploadMeta")
-  (c-name "gst_gl_upload_meta_get_format")
-  (return-type "GstVideoInfo*")
-)
-
-(define-method add_to_buffer
-  (of-object "GstGLUploadMeta")
-  (c-name "gst_gl_upload_meta_add_to_buffer")
-  (return-type "gboolean")
-  (parameters
-    '("GstBuffer*" "buffer")
+    '("GstBuffer**" "outbuf_ptr")
   )
 )
 
@@ -4642,6 +5254,16 @@
   )
 )
 
+(define-function gst_gl_get_plane_start
+  (c-name "gst_gl_get_plane_start")
+  (return-type "gsize")
+  (parameters
+    '("GstVideoInfo*" "info")
+    '("GstVideoAlignment*" "valign")
+    '("guint" "plane")
+  )
+)
+
 (define-function gst_gl_caps_replace_all_caps_features
   (c-name "gst_gl_caps_replace_all_caps_features")
   (return-type "GstCaps*")
@@ -4651,6 +5273,32 @@
   )
 )
 
+(define-function gst_gl_value_set_texture_target_from_mask
+  (c-name "gst_gl_value_set_texture_target_from_mask")
+  (return-type "gboolean")
+  (parameters
+    '("GValue*" "value")
+    '("GstGLTextureTarget" "target_mask")
+  )
+)
+
+(define-function gst_gl_value_set_texture_target
+  (c-name "gst_gl_value_set_texture_target")
+  (return-type "gboolean")
+  (parameters
+    '("GValue*" "value")
+    '("GstGLTextureTarget" "target")
+  )
+)
+
+(define-function gst_gl_value_get_texture_target_mask
+  (c-name "gst_gl_value_get_texture_target_mask")
+  (return-type "GstGLTextureTarget")
+  (parameters
+    '("const-GValue*" "value")
+  )
+)
+
 
 
 ;; From gstglviewconvert.h
@@ -4671,16 +5319,6 @@
   (return-type "GstGLViewConvert*")
 )
 
-(define-method set_format
-  (of-object "GstGLViewConvert")
-  (c-name "gst_gl_view_convert_set_format")
-  (return-type "gboolean")
-  (parameters
-    '("GstVideoInfo*" "in_info")
-    '("GstVideoInfo*" "out_info")
-  )
-)
-
 (define-method set_caps
   (of-object "GstGLViewConvert")
   (c-name "gst_gl_view_convert_set_caps")
@@ -4875,35 +5513,41 @@
   )
 )
 
-(define-function gst_gl_window_key_event_cb
-  (c-name "gst_gl_window_key_event_cb")
-  (return-type "gboolean")
+(define-method send_key_event
+  (of-object "GstGLWindow")
+  (c-name "gst_gl_window_send_key_event")
+  (return-type "none")
   (parameters
-    '("gpointer" "data")
+    '("const-char*" "event_type")
+    '("const-char*" "key_str")
   )
 )
 
-(define-function gst_gl_window_mouse_event_cb
-  (c-name "gst_gl_window_mouse_event_cb")
-  (return-type "gboolean")
+(define-method send_key_event_async
+  (of-object "GstGLWindow")
+  (c-name "gst_gl_window_send_key_event_async")
+  (return-type "none")
   (parameters
-    '("gpointer" "data")
+    '("const-char*" "event_type")
+    '("const-char*" "key_str")
   )
 )
 
-(define-method send_key_event
+(define-method send_mouse_event
   (of-object "GstGLWindow")
-  (c-name "gst_gl_window_send_key_event")
+  (c-name "gst_gl_window_send_mouse_event")
   (return-type "none")
   (parameters
     '("const-char*" "event_type")
-    '("const-char*" "key_str")
+    '("int" "button")
+    '("double" "posx")
+    '("double" "posy")
   )
 )
 
-(define-method send_mouse_event
+(define-method send_mouse_event_async
   (of-object "GstGLWindow")
-  (c-name "gst_gl_window_send_mouse_event")
+  (c-name "gst_gl_window_send_mouse_event_async")
   (return-type "none")
   (parameters
     '("const-char*" "event_type")
@@ -4913,9 +5557,9 @@
   )
 )
 
-(define-method draw_unlocked
+(define-method queue_resize
   (of-object "GstGLWindow")
-  (c-name "gst_gl_window_draw_unlocked")
+  (c-name "gst_gl_window_queue_resize")
   (return-type "none")
 )
 
@@ -4963,6 +5607,16 @@
   )
 )
 
+(define-method resize
+  (of-object "GstGLWindow")
+  (c-name "gst_gl_window_resize")
+  (return-type "none")
+  (parameters
+    '("guint" "width")
+    '("guint" "height")
+  )
+)
+
 (define-method get_context
   (of-object "GstGLWindow")
   (c-name "gst_gl_window_get_context")
@@ -6108,6 +6762,17 @@
   )
 )
 
+(define-function gst_mpegts_descriptor_from_custom_with_extension
+  (c-name "gst_mpegts_descriptor_from_custom_with_extension")
+  (return-type "GstMpegtsDescriptor*")
+  (parameters
+    '("guint8" "tag")
+    '("guint8" "tag_extension")
+    '("const-guint8*" "data")
+    '("gsize" "length")
+  )
+)
+
 
 
 ;; From gstmpegts-enumtypes.h
diff --git a/gstreamer/src/gst_docs.xml b/gstreamer/src/gst_docs.xml
index eb553e0..34938d7 100644
--- a/gstreamer/src/gst_docs.xml
+++ b/gstreamer/src/gst_docs.xml
@@ -40,7 +40,7 @@ Flags for allocators.
 <signal name="GstAppSink::eos">
 <description>
 Signal that the end-of-stream has been reached. This signal is emitted from
-the steaming thread.
+the streaming thread.
 
 </description>
 <parameters>
@@ -56,7 +56,7 @@ the steaming thread.
 <description>
 Signal that a new preroll sample is available.
 
-This signal is emitted from the steaming thread and only when the
+This signal is emitted from the streaming thread and only when the
 &quot;emit-signals&quot; property is %TRUE.
 
 The new preroll sample can be retrieved with the &quot;pull-preroll&quot; action
@@ -80,7 +80,7 @@ set to %TRUE, which it is not by default for performance reasons.
 <description>
 Signal that a new sample is available.
 
-This signal is emitted from the steaming thread and only when the
+This signal is emitted from the streaming thread and only when the
 &quot;emit-signals&quot; property is %TRUE.
 
 The new sample can be retrieved with the &quot;pull-sample&quot; action
@@ -160,6 +160,20 @@ If an EOS event was received before any buffers, this function returns
 </return>
 </signal>
 
+<signal name="GstAppSink::wait-on-eos">
+<description>
+Wait for all buffers to be processed after receiving an EOS.
+
+In cases where it is uncertain if an @appsink will have a consumer for its buffers
+when it receives an EOS, set to %FALSE to ensure that the @appsink will not hang.
+
+
+</description>
+<parameters>
+</parameters>
+<return></return>
+</signal>
+
 <signal name="GstAppSrc::block">
 <description>
 When max-bytes are queued and after the enough-data signal has been emitted,
@@ -449,6 +463,41 @@ such as in a local file.
 </parameters>
 </enum>
 
+<enum name="GstAudioBaseSinkDiscontReason">
+<description>
+Different possible reasons for discontinuities. This enum is useful for the custom
+slave method.
+
+
+</description>
+<parameters>
+<parameter name="GST_AUDIO_BASE_SINK_DISCONT_REASON_NO_DISCONT">
+<parameter_description> No discontinuity occurred
+</parameter_description>
+</parameter>
+<parameter name="GST_AUDIO_BASE_SINK_DISCONT_REASON_NEW_CAPS">
+<parameter_description> New caps are set, causing renegotiotion
+</parameter_description>
+</parameter>
+<parameter name="GST_AUDIO_BASE_SINK_DISCONT_REASON_FLUSH">
+<parameter_description> Samples have been flushed
+</parameter_description>
+</parameter>
+<parameter name="GST_AUDIO_BASE_SINK_DISCONT_REASON_SYNC_LATENCY">
+<parameter_description> Sink was synchronized to the estimated latency (occurs during initialization)
+</parameter_description>
+</parameter>
+<parameter name="GST_AUDIO_BASE_SINK_DISCONT_REASON_ALIGNMENT">
+<parameter_description> Aligning buffers failed because the timestamps are too discontinuous
+</parameter_description>
+</parameter>
+<parameter name="GST_AUDIO_BASE_SINK_DISCONT_REASON_DEVICE_FAILURE">
+<parameter_description> Audio output device experienced and recovered from an error but introduced latency 
in the process (see also @gst_audio_base_sink_report_device_failure())
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
 <enum name="GstAudioBaseSinkSlaveMethod">
 <description>
 Different possible clock slaving algorithms used when the internal audio
@@ -522,6 +571,35 @@ EOS handling and seeking.
 </parameters>
 </enum>
 
+<enum name="GstAudioChannelMixerFlags">
+<description>
+Flags passed to gst_audio_channel_mixer_new()
+
+</description>
+<parameters>
+<parameter name="GST_AUDIO_CHANNEL_MIXER_FLAGS_NONE">
+<parameter_description> no flag
+</parameter_description>
+</parameter>
+<parameter name="GST_AUDIO_CHANNEL_MIXER_FLAGS_NON_INTERLEAVED_IN">
+<parameter_description> input channels are not interleaved
+</parameter_description>
+</parameter>
+<parameter name="GST_AUDIO_CHANNEL_MIXER_FLAGS_NON_INTERLEAVED_OUT">
+<parameter_description> output channels are not interleaved
+</parameter_description>
+</parameter>
+<parameter name="GST_AUDIO_CHANNEL_MIXER_FLAGS_UNPOSITIONED_IN">
+<parameter_description> input channels are explicitly unpositioned
+</parameter_description>
+</parameter>
+<parameter name="GST_AUDIO_CHANNEL_MIXER_FLAGS_UNPOSITIONED_OUT">
+<parameter_description> output channels are explicitly unpositioned
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
 <enum name="GstAudioChannelPosition">
 <description>
 Audio channel positions.
@@ -681,6 +759,54 @@ any other channel position
 </parameters>
 </enum>
 
+<enum name="GstAudioConverterFlags">
+<description>
+Extra flags passed to gst_audio_converter_new() and gst_audio_converter_samples().
+
+</description>
+<parameters>
+<parameter name="GST_AUDIO_CONVERTER_FLAG_NONE">
+<parameter_description> no flag
+</parameter_description>
+</parameter>
+<parameter name="GST_AUDIO_CONVERTER_FLAG_IN_WRITABLE">
+<parameter_description> the input sample arrays are writable and can be
+used as temporary storage during conversion.
+</parameter_description>
+</parameter>
+<parameter name="GST_AUDIO_CONVERTER_FLAG_VARIABLE_RATE">
+<parameter_description> allow arbitrary rate updates with
+gst_audio_converter_update_config().
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
+<enum name="GstAudioDitherMethod">
+<description>
+Set of available dithering methods.
+
+</description>
+<parameters>
+<parameter name="GST_AUDIO_DITHER_NONE">
+<parameter_description> No dithering
+</parameter_description>
+</parameter>
+<parameter name="GST_AUDIO_DITHER_RPDF">
+<parameter_description> Rectangular dithering
+</parameter_description>
+</parameter>
+<parameter name="GST_AUDIO_DITHER_TPDF">
+<parameter_description> Triangular dithering (default)
+</parameter_description>
+</parameter>
+<parameter name="GST_AUDIO_DITHER_TPDF_HF">
+<parameter_description> High frequency triangular dithering
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
 <enum name="GstAudioFlags">
 <description>
 Extra audio flags
@@ -939,6 +1065,35 @@ Layout of the audio samples for the different channels.
 </parameters>
 </enum>
 
+<enum name="GstAudioNoiseShapingMethod">
+<description>
+Set of available noise shaping methods
+
+</description>
+<parameters>
+<parameter name="GST_AUDIO_NOISE_SHAPING_NONE">
+<parameter_description> No noise shaping (default)
+</parameter_description>
+</parameter>
+<parameter name="GST_AUDIO_NOISE_SHAPING_ERROR_FEEDBACK">
+<parameter_description> Error feedback
+</parameter_description>
+</parameter>
+<parameter name="GST_AUDIO_NOISE_SHAPING_SIMPLE">
+<parameter_description> Simple 2-pole noise shaping
+</parameter_description>
+</parameter>
+<parameter name="GST_AUDIO_NOISE_SHAPING_MEDIUM">
+<parameter_description> Medium 5-pole noise shaping
+</parameter_description>
+</parameter>
+<parameter name="GST_AUDIO_NOISE_SHAPING_HIGH">
+<parameter_description> High 8-pole noise shaping
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
 <enum name="GstAudioPackFlags">
 <description>
 The different flags that can be used when packing and unpacking.
@@ -949,6 +1104,31 @@ The different flags that can be used when packing and unpacking.
 <parameter_description> No flag
 </parameter_description>
 </parameter>
+<parameter name="GST_AUDIO_PACK_FLAG_TRUNCATE_RANGE">
+<parameter_description> When the source has a smaller depth
+than the target format, set the least significant bits of the target
+to 0. This is likely sightly faster but less accurate. When this flag
+is not specified, the most significant bits of the source are duplicated
+in the least significant bits of the destination.
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
+<enum name="GstAudioQuantizeFlags">
+<description>
+Extra flags that can be passed to gst_audio_quantize_new()
+
+</description>
+<parameters>
+<parameter name="GST_AUDIO_QUANTIZE_FLAG_NONE">
+<parameter_description> no flags
+</parameter_description>
+</parameter>
+<parameter name="GST_AUDIO_QUANTIZE_FLAG_NON_INTERLEAVED">
+<parameter_description> samples are non-interleaved
+</parameter_description>
+</parameter>
 </parameters>
 </enum>
 
@@ -1036,6 +1216,55 @@ disconnected (Since 1.2)
 </parameters>
 </enum>
 
+<enum name="GstAudioVisualizerShader">
+<description>
+Different types of supported background shading functions.
+
+</description>
+<parameters>
+<parameter name="GST_AUDIO_VISUALIZER_SHADER_NONE">
+<parameter_description> no shading
+</parameter_description>
+</parameter>
+<parameter name="GST_AUDIO_VISUALIZER_SHADER_FADE">
+<parameter_description> plain fading
+</parameter_description>
+</parameter>
+<parameter name="GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_UP">
+<parameter_description> fade and move up
+</parameter_description>
+</parameter>
+<parameter name="GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_DOWN">
+<parameter_description> fade and move down
+</parameter_description>
+</parameter>
+<parameter name="GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_LEFT">
+<parameter_description> fade and move left
+</parameter_description>
+</parameter>
+<parameter name="GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_RIGHT">
+<parameter_description> fade and move right
+</parameter_description>
+</parameter>
+<parameter name="GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_OUT">
+<parameter_description> fade and move horizontally out
+</parameter_description>
+</parameter>
+<parameter name="GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_IN">
+<parameter_description> fade and move horizontally in
+</parameter_description>
+</parameter>
+<parameter name="GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_OUT">
+<parameter_description> fade and move vertically out
+</parameter_description>
+</parameter>
+<parameter name="GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_IN">
+<parameter_description> fade and move vertically in
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
 <enum name="GstBaseParseFrameFlags">
 <description>
 Flags to be used in a #GstBaseParseFrame.
@@ -3022,7 +3251,14 @@ The various interpolation modes available.
 </parameter_description>
 </parameter>
 <parameter name="GST_INTERPOLATION_MODE_CUBIC">
-<parameter_description> cubic interpolation
+<parameter_description> cubic interpolation (natural), may overshoot
+the min or max values set by the control point, but is more 'curvy'
+</parameter_description>
+</parameter>
+<parameter name="GST_INTERPOLATION_MODE_CUBIC_MONOTONIC">
+<parameter_description> monotonic cubic interpolation, will not
+produce any values outside of the min-max range set by the control points
+(Since 1.8)
 </parameter_description>
 </parameter>
 </parameters>
@@ -3544,7 +3780,7 @@ made when this memory needs to be shared between buffers.
 </parameter_description>
 </parameter>
 <parameter name="GST_MEMORY_FLAG_PHYSICALLY_CONTIGUOUS">
-<parameter_description> the memory is physically contiguous. (Since 2.2)
+<parameter_description> the memory is physically contiguous. (Since 1.2)
 </parameter_description>
 </parameter>
 <parameter name="GST_MEMORY_FLAG_NOT_MAPPABLE">
@@ -4008,7 +4244,7 @@ Tyoes of navigation interface queries.
 </parameters>
 </enum>
 
-<signal name="GstNetClientClock::round-trip-limit">
+<signal name="GstNetClientInternalClock::round-trip-limit">
 <description>
 Maximum allowed round-trip for packets. If this property is set to a nonzero
 value, all packets with a round-trip interval larger than this limit will be
@@ -4539,6 +4775,10 @@ The different parsing errors that can occur.
 <parameter_description> An empty description was specified
 </parameter_description>
 </parameter>
+<parameter name="GST_PARSE_ERROR_DELAYED_LINK">
+<parameter_description> A delayed link did not get resolved.
+</parameter_description>
+</parameter>
 </parameters>
 </enum>
 
@@ -4608,6 +4848,12 @@ filename argument as filter suffix and check all matching files in
 the directory
 </parameter_description>
 </parameter>
+<parameter name="GST_PLUGIN_DEPENDENCY_FLAG_FILE_NAME_IS_PREFIX">
+<parameter_description> interpret
+filename argument as filter prefix and check all matching files in
+the directory. Since 1.8.
+</parameter_description>
+</parameter>
 </parameters>
 </enum>
 
@@ -4971,6 +5217,26 @@ Different RTCP packet types.
 </parameters>
 </enum>
 
+<enum name="GstRTPBufferMapFlags">
+<description>
+Additional mapping flags for gst_rtp_buffer_map().
+
+
+</description>
+<parameters>
+<parameter name="GST_RTP_BUFFER_MAP_FLAG_SKIP_PADDING">
+<parameter_description> Skip mapping and validation of RTP
+padding and RTP pad count when present. Useful for buffers where
+the padding may be encrypted.
+</parameter_description>
+</parameter>
+<parameter name="GST_RTP_BUFFER_MAP_FLAG_LAST">
+<parameter_description> Offset to define more flags
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
 <enum name="GstRTPPayload">
 <description>
 Standard predefined fixed payload types.
@@ -6860,6 +7126,61 @@ current title)
 </parameters>
 </enum>
 
+<enum name="GstTracerValueFlags">
+<description>
+Flag that describe the value. These flags help applications processing the
+logs to understand the values.
+
+</description>
+<parameters>
+<parameter name="GST_TRACER_VALUE_FLAGS_NONE">
+<parameter_description> no flags
+</parameter_description>
+</parameter>
+<parameter name="GST_TRACER_VALUE_FLAGS_OPTIONAL">
+<parameter_description> the value is optional. When using this flag
+one need to have an additional boolean arg before this value in the
+var-args list passed to  gst_tracer_record_log().
+</parameter_description>
+</parameter>
+<parameter name="GST_TRACER_VALUE_FLAGS_AGGREGATED">
+<parameter_description> the value is combined since the start of
+tracing
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
+<enum name="GstTracerValueScope">
+<description>
+Tracing record will contain fields that contain a meassured value or extra
+meta-data. One such meta data are values that tell where a measurement was
+taken. This enumerating declares to which scope such a meta data field
+relates to. If it is e.g. %GST_TRACER_VALUE_SCOPE_PAD, then each of the log
+events may contain values for different #GstPads.
+
+
+</description>
+<parameters>
+<parameter name="GST_TRACER_VALUE_SCOPE_PROCESS">
+<parameter_description> the value is related to the process
+</parameter_description>
+</parameter>
+<parameter name="GST_TRACER_VALUE_SCOPE_THREAD">
+<parameter_description> the value is related to a thread
+</parameter_description>
+</parameter>
+<parameter name="GST_TRACER_VALUE_SCOPE_ELEMENT">
+<parameter_description> the value is related to an #GstElement
+</parameter_description>
+</parameter>
+<parameter name="GST_TRACER_VALUE_SCOPE_PAD">
+<parameter_description> the value is related to a #GstPad
+</parameter_description>
+</parameter>
+</parameters>
+</enum>
+
 <enum name="GstTypeFindProbability">
 <description>
 The probability of the typefind function. Higher values have more certainty
@@ -7232,6 +7553,10 @@ the CIE XYZ colorspace.
 <parameter_description> BT2020 primaries. Since: 1.6.
 </parameter_description>
 </parameter>
+<parameter name="GST_VIDEO_COLOR_PRIMARIES_ADOBERGB">
+<parameter_description> Adobe RGB primaries. Since: 1.8
+</parameter_description>
+</parameter>
 </parameters>
 </enum>
 
@@ -8029,6 +8354,10 @@ range. Used for BT.2020 with 12 bits per
 component. Since: 1.6.
 </parameter_description>
 </parameter>
+<parameter name="GST_VIDEO_TRANSFER_ADOBERGB">
+<parameter_description> Gamma 2.19921875. Since: 1.8
+</parameter_description>
+</parameter>
 </parameters>
 </enum>
 
@@ -9390,6 +9719,24 @@ Get the maximum amount of buffers that can be queued in @appsink.
 </return>
 </function>
 
+<function name="gst_app_sink_get_wait_on_eos">
+<description>
+Check if @appsink will wait for all buffers to be consumed when an EOS is
+received.
+
+
+</description>
+<parameters>
+<parameter name="appsink">
+<parameter_description> a #GstAppSink
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if @appsink will wait for all buffers to be consumed when an
+EOS is received.
+</return>
+</function>
+
 <function name="gst_app_sink_is_eos">
 <description>
 Check if @appsink is EOS, which is when no more samples can be pulled because
@@ -9504,8 +9851,8 @@ reasons.
 <description>
 Set the capabilities on the appsink element.  This function takes
 a copy of the caps structure. After calling this method, the sink will only
-accept caps that match @caps. If @caps is non-fixed, you must check the caps
-on the buffers to get the actual used caps.
+accept caps that match @caps. If @caps is non-fixed, or incomplete,
+you must check the caps on the samples to get the actual used caps.
 
 </description>
 <parameters>
@@ -9580,6 +9927,25 @@ elements until a sample is pulled from @appsink.
 <return></return>
 </function>
 
+<function name="gst_app_sink_set_wait_on_eos">
+<description>
+Instruct @appsink to wait for all buffers to be consumed when an EOS is received.
+
+
+</description>
+<parameters>
+<parameter name="appsink">
+<parameter_description> a #GstAppSink
+</parameter_description>
+</parameter>
+<parameter name="wait">
+<parameter_description> the new state
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gst_app_src_end_of_stream">
 <description>
 Indicates to the appsrc element that the last buffer queued in the
@@ -9750,8 +10116,8 @@ space becomes available in the queue.
 <description>
 Extract a buffer from the provided sample and adds it to the queue of 
 buffers that the appsrc element will push to its source pad. Any 
-previous caps setted on appsrc will be replaced by the caps associated 
-with the sample if not equal.
+previous caps that were set on appsrc will be replaced by the caps
+associated with the sample if not equal.
 
 When the block property is TRUE, this function can block until free
 space becomes available in the queue.
@@ -9765,8 +10131,8 @@ space becomes available in the queue.
 </parameter_description>
 </parameter>
 <parameter name="sample">
-<parameter_description> a #GstSample from wich extract buffer to 
-push and caps to set
+<parameter_description> a #GstSample from which buffer and caps may be
+extracted
 </parameter_description>
 </parameter>
 </parameters>
@@ -10512,6 +10878,90 @@ copy of the structure (and take ownership of the taglist if there is one).
 </return>
 </function>
 
+<function name="gst_audio_channel_get_fallback_mask">
+<description>
+Get the fallback channel-mask for the given number of channels.
+
+This function returns a reasonable fallback channel-mask and should be
+called as a last resort when the specific channel map is unknown.
+
+
+</description>
+<parameters>
+<parameter name="channels">
+<parameter_description> the number of channels
+</parameter_description>
+</parameter>
+</parameters>
+<return> a fallback channel-mask for @channels or 0 when there is no
+mask.
+
+</return>
+</function>
+
+<function name="gst_audio_channel_mixer_free">
+<description>
+Free memory allocated by @mix.
+
+</description>
+<parameters>
+<parameter name="mix">
+<parameter_description> a #GstAudioChannelMixer
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gst_audio_channel_mixer_is_passthrough">
+<description>
+Check if @mix is in passthrough.
+
+
+</description>
+<parameters>
+<parameter name="mix">
+<parameter_description> a #GstAudioChannelMixer
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE is @mix is passthrough.
+</return>
+</function>
+
+<function name="gst_audio_channel_mixer_samples">
+<description>
+In case the samples are interleaved, @in and @out must point to an
+array with a single element pointing to a block of interleaved samples.
+
+If non-interleaved samples are used, @in and @out must point to an
+array with pointers to memory blocks, one for each channel.
+
+Perform channel mixing on @in_data and write the result to @out_data.
+ in_data and @out_data need to be in @format and @layout.
+
+</description>
+<parameters>
+<parameter name="mix">
+<parameter_description> a #GstAudioChannelMixer
+</parameter_description>
+</parameter>
+<parameter name="in">
+<parameter_description> input samples
+</parameter_description>
+</parameter>
+<parameter name="out">
+<parameter_description> output samples
+</parameter_description>
+</parameter>
+<parameter name="samples">
+<parameter_description> number of samples
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gst_audio_channel_positions_from_mask">
 <description>
 Convert the @channels present in @channel_mask to a @position array
@@ -10730,6 +11180,244 @@ the #GstClock object.
 <return></return>
 </function>
 
+<function name="gst_audio_converter_free">
+<description>
+Free a previously allocated @convert instance.
+
+</description>
+<parameters>
+<parameter name="convert">
+<parameter_description> a #GstAudioConverter
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gst_audio_converter_get_config">
+<description>
+Get the current configuration of @convert.
+
+
+</description>
+<parameters>
+<parameter name="convert">
+<parameter_description> a #GstAudioConverter
+</parameter_description>
+</parameter>
+<parameter name="in_rate">
+<parameter_description> result input rate
+</parameter_description>
+</parameter>
+<parameter name="out_rate">
+<parameter_description> result output rate
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GstStructure that remains valid for as long as @convert is valid
+or until gst_audio_converter_update_config() is called.
+</return>
+</function>
+
+<function name="gst_audio_converter_get_in_frames">
+<description>
+Calculate how many input frames are currently needed by @convert to produce
+ out_frames of output frames.
+
+
+</description>
+<parameters>
+<parameter name="convert">
+<parameter_description> a #GstAudioConverter
+</parameter_description>
+</parameter>
+<parameter name="out_frames">
+<parameter_description> number of output frames
+</parameter_description>
+</parameter>
+</parameters>
+<return> the number of input frames
+</return>
+</function>
+
+<function name="gst_audio_converter_get_max_latency">
+<description>
+Get the maximum number of input frames that the converter would
+need before producing output.
+
+
+</description>
+<parameters>
+<parameter name="convert">
+<parameter_description> a #GstAudioConverter
+</parameter_description>
+</parameter>
+</parameters>
+<return> the latency of @convert as expressed in the number of
+frames.
+</return>
+</function>
+
+<function name="gst_audio_converter_get_out_frames">
+<description>
+Calculate how many output frames can be produced when @in_frames input
+frames are given to @convert.
+
+
+</description>
+<parameters>
+<parameter name="convert">
+<parameter_description> a #GstAudioConverter
+</parameter_description>
+</parameter>
+<parameter name="in_frames">
+<parameter_description> number of input frames
+</parameter_description>
+</parameter>
+</parameters>
+<return> the number of output frames
+</return>
+</function>
+
+<function name="gst_audio_converter_new">
+<description>
+Create a new #GstAudioConverter that is able to convert between @in and @out
+audio formats.
+
+ config contains extra configuration options, see #GST_VIDEO_CONVERTER_OPT_*
+parameters for details about the options and values.
+
+
+</description>
+<parameters>
+<parameter name="flags">
+<parameter_description> #GstAudioConverterFlags
+</parameter_description>
+</parameter>
+<parameter name="in_info">
+<parameter_description> a source #GstAudioInfo
+</parameter_description>
+</parameter>
+<parameter name="out_info">
+<parameter_description> a destination #GstAudioInfo
+</parameter_description>
+</parameter>
+<parameter name="config">
+<parameter_description> a #GstStructure with configuration options
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GstAudioConverter or %NULL if conversion is not possible.
+</return>
+</function>
+
+<function name="gst_audio_converter_reset">
+<description>
+Reset @convert to the state it was when it was first created, clearing
+any history it might currently have.
+
+</description>
+<parameters>
+<parameter name="convert">
+<parameter_description> a #GstAudioConverter
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gst_audio_converter_samples">
+<description>
+Perform the conversion with @in_frames in @in to @out_frames in @out
+using @convert.
+
+In case the samples are interleaved, @in and @out must point to an
+array with a single element pointing to a block of interleaved samples.
+
+If non-interleaved samples are used, @in and @out must point to an
+array with pointers to memory blocks, one for each channel.
+
+ in may be %NULL, in which case @in_frames of silence samples are processed
+by the converter.
+
+This function always produces @out_frames of output and consumes @in_frames of
+input. Use gst_audio_converter_get_out_frames() and
+gst_audio_converter_get_in_frames() to make sure @in_frames and @out_frames
+are matching and @in and @out point to enough memory.
+
+
+</description>
+<parameters>
+<parameter name="convert">
+<parameter_description> a #GstAudioConverter
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> extra #GstAudioConverterFlags
+</parameter_description>
+</parameter>
+<parameter name="in">
+<parameter_description> input frames
+</parameter_description>
+</parameter>
+<parameter name="in_frames">
+<parameter_description> number of input frames
+</parameter_description>
+</parameter>
+<parameter name="out">
+<parameter_description> output frames
+</parameter_description>
+</parameter>
+<parameter name="out_frames">
+<parameter_description> number of output frames
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE is the conversion could be performed.
+</return>
+</function>
+
+<function name="gst_audio_converter_update_config">
+<description>
+Set @in_rate, @out_rate and @config as extra configuration for @convert.
+
+in_rate and @out_rate specify the new sample rates of input and output
+formats. A value of 0 leaves the sample rate unchanged.
+
+ config can be %NULL, in which case, the current configuration is not
+changed.
+
+If the parameters in @config can not be set exactly, this function returns
+%FALSE and will try to update as much state as possible. The new state can
+then be retrieved and refined with gst_audio_converter_get_config().
+
+Look at the #GST_AUDIO_CONVERTER_OPT_* fields to check valid configuration
+option and values.
+
+
+</description>
+<parameters>
+<parameter name="convert">
+<parameter_description> a #GstAudioConverter
+</parameter_description>
+</parameter>
+<parameter name="in_rate">
+<parameter_description> input rate
+</parameter_description>
+</parameter>
+<parameter name="out_rate">
+<parameter_description> output rate
+</parameter_description>
+</parameter>
+<parameter name="config">
+<parameter_description> a #GstStructure or %NULL
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE when the new parameters could be set
+</return>
+</function>
+
 <function name="gst_audio_decoder_allocate_output_buffer">
 <description>
 Helper function that allocates a buffer to hold an audio frame
@@ -11704,6 +12392,9 @@ MT safe.
 Sets max number of frames accepted at once (assumed minimally 1).
 Requires @frame_samples_min and @frame_samples_max to be the equal.
 
+Note: This value will be reset to 0 every time before
+GstAudioEncoder::set_format() is called.
+
 </description>
 <parameters>
 <parameter name="enc">
@@ -11726,6 +12417,9 @@ at most or will be handed all available if 0.
 If an exact number of samples is required, gst_audio_encoder_set_frame_samples_min()
 must be called with the same number.
 
+Note: This value will be reset to 0 every time before
+GstAudioEncoder::set_format() is called.
+
 </description>
 <parameters>
 <parameter name="enc">
@@ -11748,6 +12442,9 @@ at least or will be handed all available if 0.
 If an exact number of samples is required, gst_audio_encoder_set_frame_samples_max()
 must be called with the same number.
 
+Note: This value will be reset to 0 every time before
+GstAudioEncoder::set_format() is called.
+
 </description>
 <parameters>
 <parameter name="enc">
@@ -11850,6 +12547,9 @@ Sets encoder latency.
 <description>
 Sets encoder lookahead (in units of input rate samples)
 
+Note: This value will be reset to 0 every time before
+GstAudioEncoder::set_format() is called.
+
 </description>
 <parameters>
 <parameter name="enc">
@@ -12308,6 +13008,70 @@ info of @info.
 </return>
 </function>
 
+<function name="gst_audio_quantize_free">
+<description>
+Free a #GstAudioQuantize.
+
+</description>
+<parameters>
+<parameter name="quant">
+<parameter_description> a #GstAudioQuantize
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gst_audio_quantize_reset">
+<description>
+Reset @quant to the state is was when created, clearing any
+history it might have.
+
+</description>
+<parameters>
+<parameter name="quant">
+<parameter_description> a #GstAudioQuantize
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gst_audio_quantize_samples">
+<description>
+Perform quantization on @samples in @in and write the result to @out.
+
+In case the samples are interleaved, @in and @out must point to an
+array with a single element pointing to a block of interleaved samples.
+
+If non-interleaved samples are used, @in and @out must point to an
+array with pointers to memory blocks, one for each channel.
+
+ in and @out may point to the same memory location, in which case samples will be
+modified in-place.
+
+</description>
+<parameters>
+<parameter name="quant">
+<parameter_description> a #GstAudioQuantize
+</parameter_description>
+</parameter>
+<parameter name="in">
+<parameter_description> input samples
+</parameter_description>
+</parameter>
+<parameter name="out">
+<parameter_description> output samples
+</parameter_description>
+</parameter>
+<parameter name="samples">
+<parameter_description> number of samples
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gst_audio_reorder_channels">
 <description>
 Reorders @data from the channel positions @from to the channel
@@ -15720,6 +16484,35 @@ are enough bits available in the bit reader.
 <return></return>
 </function>
 
+<function name="gst_buffer_add_audio_clipping_meta">
+<description>
+Attaches #GstAudioClippingMeta metadata to @buffer with the given parameters.
+
+
+</description>
+<parameters>
+<parameter name="buffer">
+<parameter_description> a #GstBuffer
+</parameter_description>
+</parameter>
+<parameter name="format">
+<parameter_description> GstFormat of @start and @stop, GST_FORMAT_DEFAULT is samples
+</parameter_description>
+</parameter>
+<parameter name="start">
+<parameter_description> Amount of audio to clip from start of buffer
+</parameter_description>
+</parameter>
+<parameter name="end">
+<parameter_description> Amount of  to clip from end of buffer
+</parameter_description>
+</parameter>
+</parameters>
+<return> the #GstAudioClippingMeta on @buffer.
+
+</return>
+</function>
+
 <function name="gst_buffer_add_audio_downmix_meta">
 <description>
 Attaches #GstAudioDownmixMeta metadata to @buffer with the given parameters.
@@ -15874,6 +16667,24 @@ unsuccessful.
 </return>
 </function>
 
+<function name="gst_buffer_add_video_affine_transformation_meta">
+<description>
+Attaches GstVideoAffineTransformationMeta metadata to @buffer with
+the given parameters.
+
+
+</description>
+<parameters>
+<parameter name="buffer">
+<parameter_description> a #GstBuffer
+</parameter_description>
+</parameter>
+</parameters>
+<return> the #GstVideoAffineTransformationMeta on @buffer.
+
+</return>
+</function>
+
 <function name="gst_buffer_add_video_gl_texture_upload_meta">
 <description>
 Attaches GstVideoGLTextureUploadMeta metadata to @buffer with the given
@@ -16585,6 +17396,23 @@ and check the meta-&gt;info.api member for the API type.
 </return>
 </function>
 
+<function name="gst_buffer_get_net_address_meta">
+<description>
+Find the #GstNetAddressMeta on @buffer.
+
+
+</description>
+<parameters>
+<parameter name="buffer">
+<parameter_description> a #GstBuffer
+</parameter_description>
+</parameter>
+</parameters>
+<return> the #GstNetAddressMeta or %NULL when there
+is no such metadata on @buffer.
+</return>
+</function>
+
 <function name="gst_buffer_get_parent_buffer_meta">
 <description>
 Find and return a #GstParentBufferMeta if one exists on the
@@ -17147,9 +17975,24 @@ buffer list will be freed.
 
 <function name="gst_buffer_make_writable">
 <description>
-Makes a writable buffer from the given buffer. If the source buffer is
-already writable, this will simply return the same buffer. A copy will
-otherwise be made using gst_buffer_copy().
+Returns a writable copy of @buf. If the source buffer is
+already writable, this will simply return the same buffer.
+
+Use this function to ensure that a buffer can be safely modified before
+making changes to it, including changing the metadata such as PTS/DTS.
+
+If the reference count of the source buffer @buf is exactly one, the caller
+is the sole owner and this function will return the buffer object unchanged.
+
+If there is more than one reference on the object, a copy will be made using
+gst_buffer_copy(). The passed-in @buf will be unreffed in that case, and the
+caller will now own a reference to the new returned buffer object. Note
+that this just copies the buffer structure itself, the underlying memory is
+not copied if it can be shared amongst multiple buffers.
+
+In short, this function unrefs the buf in the argument and refs the buffer
+that it returns. Don't access the argument after calling this function unless
+you have an additional reference to it.
 
 
 </description>
@@ -17521,11 +18364,11 @@ Get the @allocator and @params from @config.
 </parameter_description>
 </parameter>
 <parameter name="allocator">
-<parameter_description> a #GstAllocator
+<parameter_description> a #GstAllocator, or %NULL
 </parameter_description>
 </parameter>
 <parameter name="params">
-<parameter_description> #GstAllocationParams
+<parameter_description> #GstAllocationParams, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
@@ -22248,8 +23091,8 @@ checking if there is enough free space available in the byte writer.
 
 <function name="gst_byte_writer_put_int8">
 <description>
-Writes a signed 8 bit integer to @writer without
-checking if there is enough free space available in the byte writer.
+Writes a signed 8 bit integer to @writer.
+
 
 </description>
 <parameters>
@@ -22262,7 +23105,8 @@ checking if there is enough free space available in the byte writer.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the value could be written
+</return>
 </function>
 
 <function name="gst_byte_writer_put_string">
@@ -23327,7 +24171,7 @@ the MT Refcounting section of the design documents.
 Converts @features to a human-readable string representation.
 
 For debugging purposes its easier to do something like this:
-|[
+|[&lt;!-- language=&quot;C&quot; --&gt;
 GST_LOG (&quot;features is %&quot; GST_PTR_FORMAT, features);
 ]|
 This prints the features in human readable form.
@@ -23382,6 +24226,10 @@ Modifies the given @caps into a representation with only fixed
 values. First the caps will be truncated and then the first structure will be
 fixated with gst_structure_fixate().
 
+This function takes ownership of @caps and will call gst_caps_make_writable()
+on it so you must not use @caps afterwards unless you keep an additional
+reference to it with gst_caps_ref().
+
 
 </description>
 <parameters>
@@ -24058,7 +24906,9 @@ Returns a #GstCaps that represents the same set of formats as
 @caps, but contains no lists.  Each list is expanded into separate
 @GstStructures.
 
-This function takes ownership of @caps.
+This function takes ownership of @caps and will call gst_caps_make_writable()
+on it so you must not use @caps afterwards unless you keep an additional
+reference to it with gst_caps_ref().
 
 
 </description>
@@ -24241,6 +25091,10 @@ same set of formats, but in a simpler form.  Component structures that are
 identical are merged.  Component structures that have values that can be
 merged are also merged.
 
+This function takes ownership of @caps and will call gst_caps_make_writable()
+on it if necessary, so you must not use @caps afterwards unless you keep an
+additional reference to it with gst_caps_ref().
+
 This method does not preserve the original order of @caps.
 
 
@@ -24329,7 +25183,7 @@ Converts @caps to a string representation.  This string representation
 can be converted back to a #GstCaps by gst_caps_from_string().
 
 For debugging purposes its easier to do something like this:
-|[
+|[&lt;!-- language=&quot;C&quot; --&gt;
 GST_LOG (&quot;caps are %&quot; GST_PTR_FORMAT, caps);
 ]|
 This prints the caps in human readable form.
@@ -24354,6 +25208,10 @@ when there are nested #GstCaps / #GstStructure deeper than one level.
 Discard all but the first structure from @caps. Useful when
 fixating.
 
+This function takes ownership of @caps and will call gst_caps_make_writable()
+on it if necessary, so you must not use @caps afterwards unless you keep an
+additional reference to it with gst_caps_ref().
+
 
 </description>
 <parameters>
@@ -24651,7 +25509,7 @@ Does the same as #gst_check_setup_sink_pad_by_name with the &lt;emphasis&gt; nam
 
 <function name="gst_check_setup_sink_pad_by_name">
 <description>
-Creates a new sink pad (based on the given @tmpl) and links it to the given @element src pad 
+Creates a new sink pad (based on the given @tmpl) and links it to the given @element src pad
 (the pad that matches the given @name).
 You can set event/chain/query functions on this pad to check the output of the @element.
 
@@ -25235,6 +26093,8 @@ same calculation as gst_clock_adjust_unlocked() when called using the
 current calibration parameters, but doesn't ensure a monotonically
 increasing result as gst_clock_adjust_unlocked() does.
 
+Note: The @clock parameter is unused and can be NULL
+
 
 </description>
 <parameters>
@@ -25883,6 +26743,49 @@ This function is the reverse of gst_clock_adjust_unlocked().
 </return>
 </function>
 
+<function name="gst_clock_unadjust_with_calibration">
+<description>
+Converts the given @external_target clock time to the internal time,
+using the passed calibration parameters. This function performs the
+same calculation as gst_clock_unadjust_unlocked() when called using the
+current calibration parameters.
+
+Note: The @clock parameter is unused and can be NULL
+
+
+</description>
+<parameters>
+<parameter name="clock">
+<parameter_description> a #GstClock to use
+</parameter_description>
+</parameter>
+<parameter name="external_target">
+<parameter_description> a clock time
+</parameter_description>
+</parameter>
+<parameter name="cinternal">
+<parameter_description> a reference internal time
+</parameter_description>
+</parameter>
+<parameter name="cexternal">
+<parameter_description> a reference external time
+</parameter_description>
+</parameter>
+<parameter name="cnum">
+<parameter_description> the numerator of the rate of the clock relative to its
+internal time
+</parameter_description>
+</parameter>
+<parameter name="cdenom">
+<parameter_description> the denominator of the rate of the clock
+</parameter_description>
+</parameter>
+</parameters>
+<return> the converted time of the clock.
+
+</return>
+</function>
+
 <function name="gst_clock_wait_for_sync">
 <description>
 Waits until @clock is synced for reporting the current time. If @timeout
@@ -26355,6 +27258,200 @@ object sequence start code. Only the first byte
 </return>
 </function>
 
+<function name="gst_codec_utils_opus_create_caps">
+<description>
+Creates Opus caps from the given parameters.
+
+
+</description>
+<parameters>
+<parameter name="rate">
+<parameter_description> the sample rate
+</parameter_description>
+</parameter>
+<parameter name="channels">
+<parameter_description> the number of channels
+</parameter_description>
+</parameter>
+<parameter name="channel_mapping_family">
+<parameter_description> the channel mapping family
+</parameter_description>
+</parameter>
+<parameter name="stream_count">
+<parameter_description> the number of independent streams
+</parameter_description>
+</parameter>
+<parameter name="coupled_count">
+<parameter_description> the number of stereo streams
+</parameter_description>
+</parameter>
+<parameter name="channel_mapping">
+<parameter_description> the mapping between the streams
+</parameter_description>
+</parameter>
+</parameters>
+<return> The #GstCaps.
+
+</return>
+</function>
+
+<function name="gst_codec_utils_opus_create_caps_from_header">
+<description>
+Creates Opus caps from the given OpusHead @header and comment header
+ comments 
+
+
+</description>
+<parameters>
+<parameter name="header">
+<parameter_description> OpusHead header
+</parameter_description>
+</parameter>
+<parameter name="comments">
+<parameter_description> Comment header or NULL
+</parameter_description>
+</parameter>
+</parameters>
+<return> The #GstCaps.
+
+</return>
+</function>
+
+<function name="gst_codec_utils_opus_create_header">
+<description>
+Creates OpusHead header from the given parameters.
+
+
+</description>
+<parameters>
+<parameter name="rate">
+<parameter_description> the sample rate
+</parameter_description>
+</parameter>
+<parameter name="channels">
+<parameter_description> the number of channels
+</parameter_description>
+</parameter>
+<parameter name="channel_mapping_family">
+<parameter_description> the channel mapping family
+</parameter_description>
+</parameter>
+<parameter name="stream_count">
+<parameter_description> the number of independent streams
+</parameter_description>
+</parameter>
+<parameter name="coupled_count">
+<parameter_description> the number of stereo streams
+</parameter_description>
+</parameter>
+<parameter name="channel_mapping">
+<parameter_description> the mapping between the streams
+</parameter_description>
+</parameter>
+<parameter name="pre_skip">
+<parameter_description> Pre-skip in 48kHz samples or 0
+</parameter_description>
+</parameter>
+<parameter name="output_gain">
+<parameter_description> Output gain or 0
+</parameter_description>
+</parameter>
+</parameters>
+<return> The #GstBuffer containing the OpusHead.
+
+</return>
+</function>
+
+<function name="gst_codec_utils_opus_parse_caps">
+<description>
+Parses Opus caps and fills the different fields with defaults if possible.
+
+
+</description>
+<parameters>
+<parameter name="caps">
+<parameter_description> the #GstCaps to which the level and profile are to be added
+</parameter_description>
+</parameter>
+<parameter name="rate">
+<parameter_description> the sample rate
+</parameter_description>
+</parameter>
+<parameter name="channels">
+<parameter_description> the number of channels
+</parameter_description>
+</parameter>
+<parameter name="channel_mapping_family">
+<parameter_description> the channel mapping family
+</parameter_description>
+</parameter>
+<parameter name="stream_count">
+<parameter_description> the number of independent streams
+</parameter_description>
+</parameter>
+<parameter name="coupled_count">
+<parameter_description> the number of stereo streams
+</parameter_description>
+</parameter>
+<parameter name="channel_mapping">
+<parameter_description> the mapping between the streams
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if parsing was successful, %FALSE otherwise.
+
+</return>
+</function>
+
+<function name="gst_codec_utils_opus_parse_header">
+<description>
+Parses the OpusHead header.
+
+
+</description>
+<parameters>
+<parameter name="header">
+<parameter_description> the OpusHead #GstBuffer
+</parameter_description>
+</parameter>
+<parameter name="rate">
+<parameter_description> the sample rate
+</parameter_description>
+</parameter>
+<parameter name="channels">
+<parameter_description> the number of channels
+</parameter_description>
+</parameter>
+<parameter name="channel_mapping_family">
+<parameter_description> the channel mapping family
+</parameter_description>
+</parameter>
+<parameter name="stream_count">
+<parameter_description> the number of independent streams
+</parameter_description>
+</parameter>
+<parameter name="coupled_count">
+<parameter_description> the number of stereo streams
+</parameter_description>
+</parameter>
+<parameter name="channel_mapping">
+<parameter_description> the mapping between the streams
+</parameter_description>
+</parameter>
+<parameter name="pre_skip">
+<parameter_description> Pre-skip in 48kHz samples or 0
+</parameter_description>
+</parameter>
+<parameter name="output_gain">
+<parameter_description> Output gain or 0
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if parsing was successful, %FALSE otherwise.
+
+</return>
+</function>
+
 <function name="gst_collect_pads_add_pad">
 <description>
 Add a pad to the collection of collect pads. The pad has to be
@@ -27434,8 +28531,8 @@ Get a writable version of the structure.
 </parameter>
 </parameters>
 <return> The structure of the context. The structure is still
-owned by the event, which means that you should not free it and
-that the pointer becomes invalid when you free the event.
+owned by the context, which means that you should not free it and
+that the pointer becomes invalid when you free the context.
 This function checks if @context is writable.
 
 </return>
@@ -29261,7 +30358,7 @@ Check if @device matches all of the given classes
 </parameter_description>
 </parameter>
 <parameter name="classes">
-<parameter_description> a &quot;/&quot; separate list of device classes to match, only match if
+<parameter_description> a &quot;/&quot;-separated list of device classes to match, only match if
 all classes are matched
 </parameter_description>
 </parameter>
@@ -29283,8 +30380,8 @@ Check if @factory matches all of the given classes
 </parameter_description>
 </parameter>
 <parameter name="classes">
-<parameter_description> a %NULL terminated array of classes to match, only match if all
-classes are matched
+<parameter_description> a %NULL terminated array of classes
+to match, only match if all classes are matched
 </parameter_description>
 </parameter>
 </parameters>
@@ -29296,7 +30393,14 @@ classes are matched
 <function name="gst_device_monitor_add_filter">
 <description>
 Adds a filter for which #GstDevice will be monitored, any device that matches
-all classes and the #GstCaps will be returned.
+all these classes and the #GstCaps will be returned.
+
+If this function is called multiple times to add more filters, each will be
+matched independently. That is, adding more filters will not further restrict
+what devices are matched.
+
+The #GstCaps supported by the device as returned by gst_device_get_caps() are
+not intersected with caps filters added using this function.
 
 Filters must be added before the #GstDeviceMonitor is started.
 
@@ -31249,6 +32353,28 @@ dynamically loaded plugins.)
 <return></return>
 </function>
 
+<function name="gst_element_class_add_static_pad_template">
+<description>
+Adds a pad template to an element class based on the static pad template
+ templ  This is mainly used in the _class_init functions of element
+implementations. If a pad template with the same name already exists,
+the old one is replaced by the new one.
+
+
+</description>
+<parameters>
+<parameter name="klass">
+<parameter_description> the #GstElementClass to add the pad template to.
+</parameter_description>
+</parameter>
+<parameter name="static_templ">
+<parameter_description> #GstStaticPadTemplate to add as pad template to the element class.
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gst_element_class_get_metadata">
 <description>
 Get metadata with @key in @klass.
@@ -31929,6 +33055,69 @@ or %NULL if none was found. No unreferencing is necessary.
 </return>
 </function>
 
+<function name="gst_element_get_context">
+<description>
+Gets the context with @context_type set on the element or NULL.
+
+MT safe.
+
+
+</description>
+<parameters>
+<parameter name="element">
+<parameter_description> a #GstElement to get the context of.
+</parameter_description>
+</parameter>
+<parameter name="context_type">
+<parameter_description> a name of a context to retrieve
+</parameter_description>
+</parameter>
+</parameters>
+<return> A #GstContext or NULL
+
+</return>
+</function>
+
+<function name="gst_element_get_context_unlocked">
+<description>
+Gets the context with @context_type set on the element or NULL.
+
+
+</description>
+<parameters>
+<parameter name="element">
+<parameter_description> a #GstElement to get the context of.
+</parameter_description>
+</parameter>
+<parameter name="context_type">
+<parameter_description> a name of a context to retrieve
+</parameter_description>
+</parameter>
+</parameters>
+<return> A #GstContext or NULL
+
+</return>
+</function>
+
+<function name="gst_element_get_contexts">
+<description>
+Gets the contexts set on the element.
+
+MT safe.
+
+
+</description>
+<parameters>
+<parameter name="element">
+<parameter_description> a #GstElement to set the context of.
+</parameter_description>
+</parameter>
+</parameters>
+<return> List of #GstContext
+
+</return>
+</function>
+
 <function name="gst_element_get_factory">
 <description>
 Retrieves the factory that was used to create this element.
@@ -33514,7 +34703,8 @@ Find the #GstEncodingProfile with the specified name and category.
 </parameter_description>
 </parameter>
 <parameter name="profilename">
-<parameter_description> The name of the profile
+<parameter_description> The name of the profile, if %NULL
+provided, it will default to the encoding profile called `default`.
 </parameter_description>
 </parameter>
 <parameter name="category">
@@ -35086,7 +36276,10 @@ stream. A new stream-id should only be created for a stream if the upstream
 stream is split into (potentially) multiple new streams, e.g. in a demuxer,
 but not for every single element in the pipeline.
 gst_pad_create_stream_id() or gst_pad_create_stream_id_printf() can be
-used to create a stream-id.
+used to create a stream-id.  There are no particular semantics for the
+stream-id, though it should be deterministic (to support stream matching)
+and it might be used to order streams (besides any information conveyed by
+stream flags).
 
 
 </description>
@@ -37019,6 +38212,50 @@ Convert @value to a gdouble.
 </return>
 </function>
 
+<function name="gst_harness_add_element_full">
+<description>
+Adds a #GstElement to an empty #GstHarness
+
+MT safe.
+
+
+</description>
+<parameters>
+<parameter name="h">
+<parameter_description> a #GstHarness
+</parameter_description>
+</parameter>
+<parameter name="element">
+<parameter_description> a #GstElement to add to the harness (transfer none)
+</parameter_description>
+</parameter>
+<parameter name="hsrc">
+<parameter_description> a #GstStaticPadTemplate describing the harness srcpad.
+%NULL will not create a harness srcpad.
+</parameter_description>
+</parameter>
+<parameter name="element_sinkpad_name">
+<parameter_description> a #gchar with the name of the element
+sinkpad that is then linked to the harness srcpad. Can be a static or request
+or a sometimes pad that has been added. %NULL will not get/request a sinkpad
+from the element. (Like if the element is a src.)
+</parameter_description>
+</parameter>
+<parameter name="hsink">
+<parameter_description> a #GstStaticPadTemplate describing the harness sinkpad.
+%NULL will not create a harness sinkpad.
+</parameter_description>
+</parameter>
+<parameter name="element_srcpad_name">
+<parameter_description> a #gchar with the name of the element
+srcpad that is then linked to the harness sinkpad, similar to the
+ element_sinkpad_name 
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gst_harness_add_element_sink_pad">
 <description>
 Links the specifed #GstPad the @GstHarness srcpad.
@@ -37063,6 +38300,28 @@ MT safe.
 <return></return>
 </function>
 
+<function name="gst_harness_add_parse">
+<description>
+Parses the @launchline and puts that in a #GstBin,
+and then attches the supplied #GstHarness to the bin.
+
+MT safe.
+
+
+</description>
+<parameters>
+<parameter name="h">
+<parameter_description> a #GstHarness
+</parameter_description>
+</parameter>
+<parameter name="launchline">
+<parameter_description> a #gchar describing a gst-launch type line
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gst_harness_add_probe">
 <description>
 A convenience function to allows you to call gst_pad_add_probe on a
@@ -37311,7 +38570,7 @@ MT safe.
 
 <function name="gst_harness_crank_multiple_clock_waits">
 <description>
-Similar to gst_harness_crank_single_clock_wait, this is the function to use
+Similar to gst_harness_crank_single_clock_wait(), this is the function to use
 if your harnessed element(s) are using more then one gst_clock_id_wait.
 Failing to do so can (and will) make it racy which #GstClockID you actually
 are releasing, where as this function will process all the waits at the
@@ -37578,7 +38837,7 @@ present.
 
 <function name="gst_harness_new">
 <description>
-Creates a new harness. Works like gst_harness_new_with_padnames, except it
+Creates a new harness. Works like gst_harness_new_with_padnames(), except it
 assumes the #GstElement sinkpad is named &quot;sink&quot; and srcpad is named &quot;src&quot;
 
 MT safe.
@@ -37597,6 +38856,23 @@ not be created
 </return>
 </function>
 
+<function name="gst_harness_new_empty">
+<description>
+Creates a new empty harness. Use gst_harness_add_element_full() to add
+an #GstElement to it.
+
+MT safe.
+
+
+</description>
+<parameters>
+</parameters>
+<return> a #GstHarness, or %NULL if the harness could
+not be created
+
+</return>
+</function>
+
 <function name="gst_harness_new_full">
 <description>
 Creates a new harness.
@@ -37663,7 +38939,7 @@ not be created
 
 <function name="gst_harness_new_with_element">
 <description>
-Creates a new harness. Works in the same way as gst_harness_new_full, only
+Creates a new harness. Works in the same way as gst_harness_new_full(), only
 that generic padtemplates are used for the harness src and sinkpads, which
 will be sufficient in most usecases.
 
@@ -37697,7 +38973,7 @@ not be created
 
 <function name="gst_harness_new_with_padnames">
 <description>
-Creates a new harness. Works in the same way as gst_harness_new_with_element,
+Creates a new harness. Works like gst_harness_new_with_element(),
 except you specify the factoryname of the #GstElement
 
 MT safe.
@@ -37730,7 +39006,7 @@ not be created
 
 <function name="gst_harness_new_with_templates">
 <description>
-Creates a new harness, like gst_harness_new_full, except it
+Creates a new harness, like gst_harness_new_full(), except it
 assumes the #GstElement sinkpad is named &quot;sink&quot; and srcpad is named &quot;src&quot;
 
 MT safe.
@@ -37767,7 +39043,7 @@ flag set is concidered a src #GstElement
 Non-src #GstElements (like sinks and filters) are automatically set to
 playing by the #GstHarness, but src #GstElements are not to avoid them
 starting to produce buffers.
-Hence, for src #GstElement you will need to call gst_harness_play explicitly.
+Hence, for src #GstElement you must call gst_harness_play() explicitly.
 
 MT safe.
 
@@ -38036,9 +39312,9 @@ name/value pairs, followed by %NULL
 <function name="gst_harness_set_blocking_push_mode">
 <description>
 Setting this will make the harness block in the chain-function, and
-then release when gst_harness_pull or gst_harness_try_pull is called.
+then release when gst_harness_pull() or gst_harness_try_pull() is called.
 Can be useful when wanting to control a src-element that is not implementing
-gst_clock_id_wait so it can't be controlled by the #GstTestClock, since
+gst_clock_id_wait() so it can't be controlled by the #GstTestClock, since
 it otherwise would produce buffers as fast as possible.
 
 MT safe.
@@ -38134,7 +39410,7 @@ is enabled, and forward any sticky-events from the main-harness to
 the sink-harness. It will also forward the %GST_QUERY_ALLOCATION.
 
 If forwarding is disabled, the user will have to either manually push
-these events from the src-harness using gst_harness_src_push_event, or
+these events from the src-harness using gst_harness_src_push_event(), or
 create and push them manually. While this will allow full control and
 inspection of these events, for the most cases having forwarding enabled
 will be sufficient when writing a test where the src-harness' main function
@@ -38501,7 +39777,7 @@ each call to gst_pad_push
 
 <function name="gst_harness_stress_push_buffer_with_cb_start_full">
 <description>
-Push a #GstBuffer in intervals of @sleep microseconds.
+Push a #GstBuffer returned by @func in intervals of @sleep microseconds.
 
 MT safe.
 
@@ -38530,8 +39806,7 @@ to prepare / create a #GstBuffer for pushing
 </parameter_description>
 </parameter>
 <parameter name="notify">
-<parameter_description> a #GDestroyNotify that is called for every push to allow cleaning
-up the #GstBuffer. (like gst_buffer_unref)
+<parameter_description> a #GDestroyNotify that is called when thread is stopped
 </parameter_description>
 </parameter>
 <parameter name="sleep">
@@ -38574,13 +39849,48 @@ each gst_event_push with @event
 </return>
 </function>
 
+<function name="gst_harness_stress_push_event_with_cb_start_full">
+<description>
+Push a #GstEvent returned by @func onto the harnessed #GstElement sinkpad
+in intervals of @sleep microseconds.
+
+MT safe.
+
+
+</description>
+<parameters>
+<parameter name="h">
+<parameter_description> a #GstHarness
+</parameter_description>
+</parameter>
+<parameter name="func">
+<parameter_description> a #GstHarnessPrepareEventFunc function called before every iteration
+to prepare / create a #GstEvent for pushing
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> a #gpointer with data to the #GstHarnessPrepareEventFunc function
+</parameter_description>
+</parameter>
+<parameter name="notify">
+<parameter_description> a #GDestroyNotify that is called when thread is stopped
+</parameter_description>
+</parameter>
+<parameter name="sleep">
+<parameter_description> a #gulong specifying how long to sleep in (microseconds) for
+each call to gst_pad_push
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GstHarnessThread
+
+</return>
+</function>
+
 <function name="gst_harness_stress_push_upstream_event_start_full">
 <description>
 Push the @event onto the harnessed #GstElement srcpad in intervals of
 @sleep microseconds.
-Pushing events should generally be OOB events.
-If you need serialized events, you may use a custom stress thread which
-both pushes buffers and events.
 
 MT safe.
 
@@ -38606,6 +39916,44 @@ each gst_event_push with @event
 </return>
 </function>
 
+<function name="gst_harness_stress_push_upstream_event_with_cb_start_full">
+<description>
+Push a #GstEvent returned by @func onto the harnessed #GstElement srcpad
+in intervals of @sleep microseconds.
+
+MT safe.
+
+
+</description>
+<parameters>
+<parameter name="h">
+<parameter_description> a #GstHarness
+</parameter_description>
+</parameter>
+<parameter name="func">
+<parameter_description> a #GstHarnessPrepareEventFunc function called before every iteration
+to prepare / create a #GstEvent for pushing
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> a #gpointer with data to the #GstHarnessPrepareEventFunc function
+</parameter_description>
+</parameter>
+<parameter name="notify">
+<parameter_description> a #GDestroyNotify that is called when thread is stopped
+</parameter_description>
+</parameter>
+<parameter name="sleep">
+<parameter_description> a #gulong specifying how long to sleep in (microseconds) for
+each call to gst_pad_push
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GstHarnessThread
+
+</return>
+</function>
+
 <function name="gst_harness_stress_requestpad_start_full">
 <description>
 Call gst_element_request_pad in intervals of @sleep microseconds
@@ -39426,6 +40774,91 @@ ids to writer descriptions.
 <return></return>
 </function>
 
+<function name="gst_info_strdup_printf">
+<description>
+Allocates, fills and returns a null terminated string from the printf style
+ format string and corresponding arguments.
+
+See gst_info_vasprintf() for when this function is required.
+
+Free with g_free().
+
+
+</description>
+<parameters>
+<parameter name="format">
+<parameter_description> a printf style format string
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> the printf arguments for @format
+</parameter_description>
+</parameter>
+</parameters>
+<return> a newly allocated null terminated string or %NULL on any error
+
+</return>
+</function>
+
+<function name="gst_info_strdup_vprintf">
+<description>
+Allocates, fills and returns a null terminated string from the printf style
+ format string and @args.
+
+See gst_info_vasprintf() for when this function is required.
+
+Free with g_free().
+
+
+</description>
+<parameters>
+<parameter name="format">
+<parameter_description> a printf style format string
+</parameter_description>
+</parameter>
+<parameter name="args">
+<parameter_description> the va_list of printf arguments for @format
+</parameter_description>
+</parameter>
+</parameters>
+<return> a newly allocated null terminated string or %NULL on any error
+
+</return>
+</function>
+
+<function name="gst_info_vasprintf">
+<description>
+Allocates and fills a string large enough (including the terminating null
+byte) to hold the specified printf style @format and @args.
+
+This function deals with the GStreamer specific printf specifiers
+#GST_PTR_FORMAT and #GST_SEGMENT_FORMAT.  If you do not have these specifiers
+in your @format string, you do not need to use this function and can use
+alternatives such as g_vasprintf().
+
+Free @result with g_free().
+
+
+</description>
+<parameters>
+<parameter name="result">
+<parameter_description> the resulting string
+</parameter_description>
+</parameter>
+<parameter name="format">
+<parameter_description> a printf style format string
+</parameter_description>
+</parameter>
+<parameter name="args">
+<parameter_description> the va_list of printf arguments for @format
+</parameter_description>
+</parameter>
+</parameters>
+<return> the length of the string allocated into @result or -1 on any error
+
+</return>
+</function>
+
 <function name="gst_init">
 <description>
 Initializes the GStreamer library, setting up internal path lists,
@@ -41914,7 +43347,7 @@ Extracts the GError and debug string from the GstMessage. The values returned
 in the output arguments are copies; the caller must free them when done.
 
 Typical usage of this function might be:
-|[
+|[&lt;!-- language=&quot;C&quot; --&gt;
 ...
 switch (GST_MESSAGE_TYPE (msg)) {
 case GST_MESSAGE_ERROR: {
@@ -42282,7 +43715,7 @@ MT safe.
 Extracts the old and new states from the GstMessage.
 
 Typical usage of this function might be:
-|[
+|[&lt;!-- language=&quot;C&quot; --&gt;
 ...
 switch (GST_MESSAGE_TYPE (msg)) {
 case GST_MESSAGE_STATE_CHANGED: {
@@ -42470,7 +43903,7 @@ Extracts the tag list from the GstMessage. The tag list returned in the
 output argument is a copy; the caller must free it when done.
 
 Typical usage of this function might be:
-|[
+|[&lt;!-- language=&quot;C&quot; --&gt;
 ...
 switch (GST_MESSAGE_TYPE (msg)) {
 case GST_MESSAGE_TAG: {
@@ -43102,6 +44535,21 @@ in NTP-UTC format.
 </return>
 </function>
 
+<function name="gst_mikey_message_base64_encode">
+<description>
+
+</description>
+<parameters>
+<parameter name="msg">
+<parameter_description> a #GstMIKEYMessage
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #gchar, base64-encoded data
+
+</return>
+</function>
+
 <function name="gst_mikey_message_copy">
 <description>
 Create a copy of the given message.
@@ -43312,6 +44760,27 @@ Make a new #GstMIKEYMessage from @bytes.
 </return>
 </function>
 
+<function name="gst_mikey_message_new_from_caps">
+<description>
+Makes mikey message including:
+- Security Policy Payload
+- Key Data Transport Payload
+- Key Data Sub-Payload
+
+
+</description>
+<parameters>
+<parameter name="caps">
+<parameter_description> a #GstCaps, including SRTP parameters (srtp/srtcp cipher, authorization, key data)
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GstMIKEYMessage,
+or %NULL if there is no srtp information in the caps.
+
+</return>
+</function>
+
 <function name="gst_mikey_message_new_from_data">
 <description>
 Parse @size bytes from @data into a #GstMIKEYMessage. @info contains the
@@ -45236,7 +46705,7 @@ for mouse-move events.
 
 <function name="gst_net_client_clock_new">
 <description>
-Create a new #GstNetClientClock that will report the time
+Create a new #GstNetClientInternalClock that will report the time
 provided by the #GstNetTimeProvider on @remote_address and 
 @remote_port.
 
@@ -45248,7 +46717,7 @@ provided by the #GstNetTimeProvider on @remote_address and
 </parameter_description>
 </parameter>
 <parameter name="remote_address">
-<parameter_description> the address of the remote clock provider
+<parameter_description> the address or hostname of the remote clock provider
 </parameter_description>
 </parameter>
 <parameter name="remote_port">
@@ -45433,7 +46902,7 @@ the NTPv4 server on @remote_address and @remote_port.
 </parameter_description>
 </parameter>
 <parameter name="remote_address">
-<parameter_description> the address of the remote clock provider
+<parameter_description> the address or hostname of the remote clock provider
 </parameter_description>
 </parameter>
 <parameter name="remote_port">
@@ -46331,6 +47800,13 @@ MT safe.
 Be notified of different states of pads. The provided callback is called for
 every state that matches @mask.
 
+Probes are called in groups: First GST_PAD_PROBE_TYPE_BLOCK probes are
+called, then others, then finally GST_PAD_PROBE_TYPE_IDLE. The only
+exception here are GST_PAD_PROBE_TYPE_IDLE probes that are called
+immediately if the pad is already idle while calling gst_pad_add_probe().
+In each of the groups, probes are called in the order in which they were
+added.
+
 
 </description>
 <parameters>
@@ -46692,7 +48168,8 @@ Gets the capabilities currently configured on @pad with the last
 </parameter_description>
 </parameter>
 </parameters>
-<return> the current caps of the pad with incremented ref-count.
+<return> the current caps of the pad with
+incremented ref-count or %NULL when pad has no caps. Unref after usage.
 </return>
 </function>
 
@@ -47408,9 +48885,9 @@ if it is not %NULL the returned caps will be a subset of @filter.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the caps of the peer pad with incremented ref-count. When there is
-no peer pad, this function returns @filter or, when @filter is %NULL, ANY
-caps.
+<return> the caps of the peer pad with incremented
+ref-count. When there is no peer pad, this function returns @filter or,
+when @filter is %NULL, ANY caps.
 </return>
 </function>
 
@@ -47514,7 +48991,7 @@ position, or %NULL.
 </return>
 </function>
 
-<function name="gst_pad_probe_info_get_bufferlist">
+<function name="gst_pad_probe_info_get_buffer_list">
 <description>
 
 </description>
@@ -47524,7 +49001,7 @@ position, or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The #GstBufferlist from the probe
+<return> The #GstBufferList from the probe
 </return>
 </function>
 
@@ -48245,6 +49722,52 @@ No locking is performed in this function.
 <return></return>
 </function>
 
+<function name="gst_pad_set_event_full_function">
+<description>
+Calls gst_pad_set_event_full_function_full() with %NULL for the user_data and
+notify.
+
+</description>
+<parameters>
+<parameter name="p">
+<parameter_description> a #GstPad of either direction.
+</parameter_description>
+</parameter>
+<parameter name="f">
+<parameter_description> the #GstPadEventFullFunction to set.
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gst_pad_set_event_full_function_full">
+<description>
+Sets the given event handler for the pad.
+
+
+</description>
+<parameters>
+<parameter name="pad">
+<parameter_description> a #GstPad of either direction.
+</parameter_description>
+</parameter>
+<parameter name="event">
+<parameter_description> the #GstPadEventFullFunction to set.
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user_data passed to @notify
+</parameter_description>
+</parameter>
+<parameter name="notify">
+<parameter_description> notify called when @event will not be used anymore.
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gst_pad_set_event_function">
 <description>
 Calls gst_pad_set_event_function_full() with %NULL for the user_data and
@@ -49837,7 +51360,7 @@ Loads the plugin containing @feature if it's not already loaded. @feature is
 unaffected; use the return value instead.
 
 Normally this function is used like this:
-|[
+|[&lt;!-- language=&quot;C&quot; --&gt;
 GstPluginFeature *loaded_feature;
 
 loaded_feature = gst_plugin_feature_load (feature);
@@ -51524,8 +53047,8 @@ Free-function: gst_query_unref
 <function name="gst_query_find_allocation_meta">
 <description>
 Check if @query has metadata @api set. When this function returns %TRUE,
- index will contain the index where the requested API and the flags can be
-found.
+ index will contain the index where the requested API and the parameters
+can be found.
 
 
 </description>
@@ -52407,7 +53930,7 @@ at @index of the metadata API array.
 </parameter_description>
 </parameter>
 <parameter name="params">
-<parameter_description> API specific flags
+<parameter_description> API specific parameters
 </parameter_description>
 </parameter>
 </parameters>
@@ -57325,6 +58848,37 @@ This function can be cancelled with gst_rtsp_connection_flush().
 </return>
 </function>
 
+<function name="gst_rtsp_connection_connect_with_response">
+<description>
+Attempt to connect to the url of @conn made with
+gst_rtsp_connection_create(). If @timeout is #NULL this function can block
+forever. If @timeout contains a valid timeout, this function will return
+#GST_RTSP_ETIMEOUT after the timeout expired.  If @conn is set to tunneled,
+ response will contain a response to the tunneling request messages.
+
+This function can be cancelled with gst_rtsp_connection_flush().
+
+
+</description>
+<parameters>
+<parameter name="conn">
+<parameter_description> a #GstRTSPConnection
+</parameter_description>
+</parameter>
+<parameter name="timeout">
+<parameter_description> a #GTimeVal timeout
+</parameter_description>
+</parameter>
+<parameter name="response">
+<parameter_description> a #GstRTSPMessage
+</parameter_description>
+</parameter>
+</parameters>
+<return> #GST_RTSP_OK when a connection could be made.
+
+</return>
+</function>
+
 <function name="gst_rtsp_connection_create">
 <description>
 Create a newly allocated #GstRTSPConnection from @url and store it in @conn.
@@ -59938,6 +61492,27 @@ Set the connection with the given parameters.
 </return>
 </function>
 
+<function name="gst_sdp_make_keymgmt">
+<description>
+Makes key management data
+
+
+</description>
+<parameters>
+<parameter name="uri">
+<parameter_description> a #gchar URI
+</parameter_description>
+</parameter>
+<parameter name="base64">
+<parameter_description> a #gchar base64-encoded key data
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #gchar key-mgmt data,
+
+</return>
+</function>
+
 <function name="gst_sdp_media_add_attribute">
 <description>
 Add the attribute with @key and @value to @media.
@@ -60075,6 +61650,27 @@ Get the number of attribute fields in @media.
 </return>
 </function>
 
+<function name="gst_sdp_media_attributes_to_caps">
+<description>
+Mapping of attributes of #GstSDPMedia to #GstCaps
+
+
+</description>
+<parameters>
+<parameter name="media">
+<parameter_description> a #GstSDPMedia
+</parameter_description>
+</parameter>
+<parameter name="caps">
+<parameter_description> a #GstCaps
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GstSDPResult.
+
+</return>
+</function>
+
 <function name="gst_sdp_media_bandwidths_len">
 <description>
 Get the number of bandwidth fields in @media.
@@ -60247,6 +61843,33 @@ Get the bandwidth at position @idx in @media.
 </return>
 </function>
 
+<function name="gst_sdp_media_get_caps_from_media">
+<description>
+Mapping of caps from SDP fields:
+
+a=rtpmap:(payload) (encoding_name)/(clock_rate)[/(encoding_params)]
+
+a=framesize:(payload) (width)-(height)
+
+a=fmtp:(payload) (param)[=(value)];...
+
+
+</description>
+<parameters>
+<parameter name="media">
+<parameter_description> a #GstSDPMedia
+</parameter_description>
+</parameter>
+<parameter name="pt">
+<parameter_description> a payload type
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GstCaps, or %NULL if an error happened
+
+</return>
+</function>
+
 <function name="gst_sdp_media_get_connection">
 <description>
 Get the connection at position @idx in @media.
@@ -60772,6 +62395,33 @@ Set the media description of @media to @med.
 </return>
 </function>
 
+<function name="gst_sdp_media_set_media_from_caps">
+<description>
+Mapping of caps to SDP fields:
+
+a=rtpmap:(payload) (encoding_name) or (clock_rate)[or (encoding_params)]
+
+a=framesize:(payload) (width)-(height)
+
+a=fmtp:(payload) (param)[=(value)];...
+
+
+</description>
+<parameters>
+<parameter name="caps">
+<parameter_description> a #GstCaps
+</parameter_description>
+</parameter>
+<parameter name="media">
+<parameter_description> a #GstSDPMedia
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GstSDPResult.
+
+</return>
+</function>
+
 <function name="gst_sdp_media_set_port_info">
 <description>
 Set the port information in @media.
@@ -61052,6 +62702,27 @@ Get the number of attributes in @msg.
 </return>
 </function>
 
+<function name="gst_sdp_message_attributes_to_caps">
+<description>
+Mapping of attributes of #GstSDPMessage to #GstCaps
+
+
+</description>
+<parameters>
+<parameter name="msg">
+<parameter_description> a #GstSDPMessage
+</parameter_description>
+</parameter>
+<parameter name="caps">
+<parameter_description> a #GstCaps
+</parameter_description>
+</parameter>
+</parameters>
+<return> a #GstSDPResult.
+
+</return>
+</function>
+
 <function name="gst_sdp_message_bandwidths_len">
 <description>
 Get the number of bandwidth information in @msg.
@@ -62570,6 +64241,146 @@ returned, @offset is not in @segment.
 </return>
 </function>
 
+<function name="gst_segment_position_from_running_time">
+<description>
+Convert @running_time into a position in the segment so that
+gst_segment_to_running_time() with that position returns @running_time.
+
+
+</description>
+<parameters>
+<parameter name="segment">
+<parameter_description> a #GstSegment structure.
+</parameter_description>
+</parameter>
+<parameter name="format">
+<parameter_description> the format of the segment.
+</parameter_description>
+</parameter>
+<parameter name="running_time">
+<parameter_description> the running_time in the segment
+</parameter_description>
+</parameter>
+</parameters>
+<return> the position in the segment for @running_time. This function returns
+-1 when @running_time is -1 or when it is not inside @segment.
+
+</return>
+</function>
+
+<function name="gst_segment_position_from_running_time_full">
+<description>
+Translate @running_time to the segment position using the currently configured
+segment. Compared to gst_segment_position_from_running_time() this function can
+return negative segment position.
+
+This function is typically used by elements that need to synchronize buffers
+against the clock or each other.
+
+ running_time can be any value and the result of this function for values
+outside of the segment is extrapolated.
+
+When 1 is returned, @running_time resulted in a positive position returned
+in @position.
+
+When this function returns -1, the returned @position should be negated
+to get the real negative segment position.
+
+
+</description>
+<parameters>
+<parameter name="segment">
+<parameter_description> a #GstSegment structure.
+</parameter_description>
+</parameter>
+<parameter name="format">
+<parameter_description> the format of the segment.
+</parameter_description>
+</parameter>
+<parameter name="running_time">
+<parameter_description> the running-time
+</parameter_description>
+</parameter>
+<parameter name="position">
+<parameter_description> the resulting position in the segment
+</parameter_description>
+</parameter>
+</parameters>
+<return> a 1 or -1 on success, 0 on failure.
+
+</return>
+</function>
+
+<function name="gst_segment_position_from_stream_time">
+<description>
+Convert @stream_time into a position in the segment so that
+gst_segment_to_stream_time() with that position returns @stream_time.
+
+
+</description>
+<parameters>
+<parameter name="segment">
+<parameter_description> a #GstSegment structure.
+</parameter_description>
+</parameter>
+<parameter name="format">
+<parameter_description> the format of the segment.
+</parameter_description>
+</parameter>
+<parameter name="stream_time">
+<parameter_description> the stream_time in the segment
+</parameter_description>
+</parameter>
+</parameters>
+<return> the position in the segment for @stream_time. This function returns
+-1 when @stream_time is -1 or when it is not inside @segment.
+
+</return>
+</function>
+
+<function name="gst_segment_position_from_stream_time_full">
+<description>
+Translate @stream_time to the segment position using the currently configured
+segment. Compared to gst_segment_position_from_stream_time() this function can
+return negative segment position.
+
+This function is typically used by elements that need to synchronize buffers
+against the clock or each other.
+
+ stream_time can be any value and the result of this function for values outside
+of the segment is extrapolated.
+
+When 1 is returned, @stream_time resulted in a positive position returned
+in @position.
+
+When this function returns -1, the returned @position should be negated
+to get the real negative segment position.
+
+
+</description>
+<parameters>
+<parameter name="segment">
+<parameter_description> a #GstSegment structure.
+</parameter_description>
+</parameter>
+<parameter name="format">
+<parameter_description> the format of the segment.
+</parameter_description>
+</parameter>
+<parameter name="stream_time">
+<parameter_description> the stream-time
+</parameter_description>
+</parameter>
+<parameter name="position">
+<parameter_description> the resulting position in the segment
+</parameter_description>
+</parameter>
+</parameters>
+<return> a 1 or -1 on success, 0 on failure.
+
+</return>
+</function>
+
 <function name="gst_segment_set_running_time">
 <description>
 Adjust the start/stop and base values of @segment such that the next valid
@@ -62619,6 +64430,8 @@ gst_segment_to_running_time() with that position returns @running_time.
 </parameters>
 <return> the position in the segment for @running_time. This function returns
 -1 when @running_time is -1 or when it is not inside @segment.
+
+Deprecated. Use gst_segment_position_from_running_time() instead.
 </return>
 </function>
 
@@ -62729,6 +64542,50 @@ media stream.
 </parameters>
 <return> the position in stream_time or -1 when an invalid position
 was given.
+
+</return>
+</function>
+
+<function name="gst_segment_to_stream_time_full">
+<description>
+Translate @position to the total stream time using the currently configured
+segment. Compared to gst_segment_to_stream_time() this function can return
+negative stream-time.
+
+This function is typically used by elements that need to synchronize buffers
+against the clock or eachother.
+
+ position can be any value and the result of this function for values outside
+of the segment is extrapolated.
+
+When 1 is returned, @position resulted in a positive stream-time returned
+in @stream_time.
+
+When this function returns -1, the returned @stream_time should be negated
+to get the real negative stream time.
+
+
+</description>
+<parameters>
+<parameter name="segment">
+<parameter_description> a #GstSegment structure.
+</parameter_description>
+</parameter>
+<parameter name="format">
+<parameter_description> the format of the segment.
+</parameter_description>
+</parameter>
+<parameter name="position">
+<parameter_description> the position in the segment
+</parameter_description>
+</parameter>
+<parameter name="stream_time">
+<parameter_description> result stream-time
+</parameter_description>
+</parameter>
+</parameters>
+<return> a 1 or -1 on success, 0 on failure.
+
 </return>
 </function>
 
@@ -64534,7 +66391,7 @@ value is replaced and freed. The function will take ownership of @value.
 Converts @structure to a human-readable string representation.
 
 For debugging purposes its easier to do something like this:
-|[
+|[&lt;!-- language=&quot;C&quot; --&gt;
 GST_LOG (&quot;structure is %&quot; GST_PTR_FORMAT, structure);
 ]|
 This prints the structure in human readable form.
@@ -67759,6 +69616,30 @@ MT safe.
 <return></return>
 </function>
 
+<function name="gst_test_clock_crank">
+<description>
+A &quot;crank&quot; consists of three steps:
+1: Wait for a #GstClockID to be registered with the #GstTestClock.
+2: Advance the #GstTestClock to the time the #GstClockID is waiting for.
+3: Release the #GstClockID wait.
+A &quot;crank&quot; can be though of as the notion of
+manually driving the clock forward to its next logical step.
+
+Return: %TRUE if the crank was successful, %FALSE otherwise.
+
+MT safe.
+
+
+</description>
+<parameters>
+<parameter name="test_clock">
+<parameter_description> #GstTestClock to crank
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gst_test_clock_get_next_entry_time">
 <description>
 Retrieve the requested time for the next pending clock notification.
@@ -68749,6 +70630,140 @@ unreffed before setting a new one.
 <return></return>
 </function>
 
+<function name="gst_tracer_factory_get_list">
+<description>
+Gets the list of all registered tracer factories. You must free the
+list using gst_plugin_feature_list_free().
+
+The returned factories are sorted by factory name.
+
+Free-function: gst_plugin_feature_list_free
+
+
+</description>
+<parameters>
+</parameters>
+<return> the list of all
+registered #GstTracerFactory.
+
+</return>
+</function>
+
+<function name="gst_tracer_record_log">
+<description>
+Serialzes the trace event into the log.
+
+Right now this is using the gstreamer debug log with the level TRACE (7) and
+the category &quot;GST_TRACER&quot;.
+&lt;note&gt;&lt;para&gt;
+Please note that this is still under discussion and subject to change.
+&lt;/para&gt;&lt;/note&gt;
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> the tracer-record
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> the args as described in the spec-
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
+<function name="gst_tracer_record_new">
+<description>
+Create a new tracer record. The record instance can be used to efficiently
+log entries using gst_tracer_record_log().
+
+The @name without the &quot;.class&quot; suffix will be used for the log records.
+There must be fields for each value that gets logged where the field name is
+the value name. The field must be a #GstStructure describing the value. The
+sub structure must contain a field called 'type' of %G_TYPE_GTYPE that
+contains the GType of the value. The resulting #GstTracerRecord will take
+ownership of the field structures.
+
+The way to deal with optional values is to log an additional boolean before
+the optional field, that if %TRUE signals that the optional field is valid
+and %FALSE signals that the optional field should be ignored. One must still
+log a placeholder value for the optional field though. Please also note, that
+pointer type values must not be NULL - the underlying serialisation can not
+handle that right now.
+
+&lt;note&gt;&lt;para&gt;
+Please note that this is still under discussion and subject to change.
+&lt;/para&gt;&lt;/note&gt;
+
+
+</description>
+<parameters>
+<parameter name="name">
+<parameter_description> name of new record, must end on &quot;.class&quot;.
+</parameter_description>
+</parameter>
+<parameter name="firstfield">
+<parameter_description> name of first field to set
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> additional arguments
+</parameter_description>
+</parameter>
+</parameters>
+<return> a new #GstTracerRecord
+</return>
+</function>
+
+<function name="gst_tracer_register">
+<description>
+Create a new tracer-factory  capable of instantiating objects of the
+ type and add the factory to @plugin.
+
+
+</description>
+<parameters>
+<parameter name="plugin">
+<parameter_description> A #GstPlugin, or %NULL for a static typefind function
+</parameter_description>
+</parameter>
+<parameter name="name">
+<parameter_description> The name for registering
+</parameter_description>
+</parameter>
+<parameter name="type">
+<parameter_description> GType of tracer to register
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE, if the registering succeeded, %FALSE on error
+</return>
+</function>
+
+<function name="gst_tracing_register_hook">
+<description>
+Register @func to be called when the trace hook @detail is getting invoked.
+Use %NULL for @detail to register to all hooks.
+
+</description>
+<parameters>
+<parameter name="tracer">
+<parameter_description> the tracer
+</parameter_description>
+</parameter>
+<parameter name="detail">
+<parameter_description> the detailed hook
+</parameter_description>
+</parameter>
+<parameter name="func">
+<parameter_description> the callback
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gst_trigger_control_source_new">
 <description>
 This returns a new, unbound #GstTriggerControlSource.
@@ -72137,7 +74152,7 @@ Sets @b as the value of @v.  Caller retains reference to sample.
 
 <function name="gst_value_set_structure">
 <description>
-Sets the contents of @value to @structure.  The actual
+Sets the contents of @value to @structure.
 
 </description>
 <parameters>
@@ -72281,6 +74296,25 @@ of GStreamer.
 </return>
 </function>
 
+<function name="gst_video_affine_transformation_meta_apply_matrix">
+<description>
+Apply a transformation using the given 4x4 transformation matrix
+
+
+</description>
+<parameters>
+<parameter name="meta">
+<parameter_description> a #GstVideoAffineTransformationMeta
+</parameter_description>
+</parameter>
+<parameter name="matrix">
+<parameter_description> a 4x4 transformation matrix to be applied
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
+
 <function name="gst_video_alignment_reset">
 <description>
 Set @align to its default values with no padding and no alignment.
@@ -74614,11 +76648,48 @@ Copy the plane with index @plane from @src to @dest.
 
 <function name="gst_video_frame_map">
 <description>
-Use @info and @buffer to fill in the values of @frame.
+Use @info and @buffer to fill in the values of @frame. @frame is usually
+allocated on the stack, and you will pass the address to the #GstVideoFrame
+structure allocated on the stack; gst_video_frame_map() will then fill in
+the structures with the various video-specific information you need to access
+the pixels of the video buffer. You can then use accessor macros such as
+GST_VIDEO_FRAME_COMP_DATA(), GST_VIDEO_FRAME_PLANE_DATA(),
+GST_VIDEO_FRAME_COMP_STRIDE(), GST_VIDEO_FRAME_PLANE_STRIDE() etc.
+to get to the pixels.
+
+|[&lt;!-- language=&quot;C&quot; --&gt;
+GstVideoFrame vframe;
+...
+// set RGB pixels to black one at a time
+if (gst_video_frame_map (&amp;vframe, video_info, video_buffer)) {
+guint8 *pixels = GST_VIDEO_FRAME_PLANE_DATA (vframe, 0);
+guint stride = GST_VIDEO_FRAME_PLANE_STRIDE (vframe, 0);
+guint pixel_stride = GST_VIDEO_FRAME_PLANE_PSTRIDE (vframe, 0);
+
+for (h = 0; h &lt; height; ++h) {
+for (w = 0; w &lt; width; ++w) {
+guint8 *pixel = pixels + h * stride + w * pixel_stride;
+
+memset (pixel, 0, pixel_stride);
+}
+}
+}
+...
+]|
 
 All video planes of @buffer will be mapped and the pointers will be set in
 @frame-&gt;data.
 
+The purpose of this function is to make it easy for you to get to the video
+pixels in a generic way, without you having to worry too much about details
+such as whether the video data is allocated in one contiguous memory chunk
+or multiple memory chunks (e.g. one for each plane); or if custom strides
+and custom plane offsets are used or not (as signalled by GstVideoMeta on
+each buffer). This function will just fill the #GstVideoFrame structure
+with the right values and if you use the accessor macros everything will
+just work and you can access the data easily. It also maps the underlying
+memory chunks for you.
+
 
 </description>
 <parameters>
diff --git a/gstreamer/src/gst_enums.defs b/gstreamer/src/gst_enums.defs
index 2ed955d..faf46c8 100644
--- a/gstreamer/src/gst_enums.defs
+++ b/gstreamer/src/gst_enums.defs
@@ -1399,7 +1399,8 @@
 ;;   GST_PARSE_ERROR_LINK,
 ;;   GST_PARSE_ERROR_COULD_NOT_SET_PROPERTY,
 ;;   GST_PARSE_ERROR_EMPTY_BIN,
-;;   GST_PARSE_ERROR_EMPTY
+;;   GST_PARSE_ERROR_EMPTY,
+;;   GST_PARSE_ERROR_DELAYED_LINK
 ;; } GstParseError;
 
 (define-enum-extended ParseError
@@ -1413,6 +1414,7 @@
     '("could-not-set-property" "GST_PARSE_ERROR_COULD_NOT_SET_PROPERTY" "4")
     '("empty-bin" "GST_PARSE_ERROR_EMPTY_BIN" "5")
     '("empty" "GST_PARSE_ERROR_EMPTY" "6")
+    '("delayed-link" "GST_PARSE_ERROR_DELAYED_LINK" "7")
   )
 )
 
@@ -1514,7 +1516,8 @@
 ;;   GST_PLUGIN_DEPENDENCY_FLAG_NONE = 0,
 ;;   GST_PLUGIN_DEPENDENCY_FLAG_RECURSE = (1 << 0),
 ;;   GST_PLUGIN_DEPENDENCY_FLAG_PATHS_ARE_DEFAULT_ONLY = (1 << 1),
-;;   GST_PLUGIN_DEPENDENCY_FLAG_FILE_NAME_IS_SUFFIX = (1 << 2)
+;;   GST_PLUGIN_DEPENDENCY_FLAG_FILE_NAME_IS_SUFFIX = (1 << 2),
+;;   GST_PLUGIN_DEPENDENCY_FLAG_FILE_NAME_IS_PREFIX = (1 << 3)
 ;; } GstPluginDependencyFlags;
 
 (define-flags-extended PluginDependencyFlags
@@ -1525,6 +1528,7 @@
     '("recurse" "GST_PLUGIN_DEPENDENCY_FLAG_RECURSE" "(1 << 0)")
     '("paths-are-default-only" "GST_PLUGIN_DEPENDENCY_FLAG_PATHS_ARE_DEFAULT_ONLY" "(1 << 1)")
     '("file-name-is-suffix" "GST_PLUGIN_DEPENDENCY_FLAG_FILE_NAME_IS_SUFFIX" "(1 << 2)")
+    '("file-name-is-prefix" "GST_PLUGIN_DEPENDENCY_FLAG_FILE_NAME_IS_PREFIX" "(1 << 3)")
   )
 )
 
@@ -2265,6 +2269,116 @@
   )
 )
 
+;; From gsttracerrecord.h
+
+;; Original typedef:
+;; typedef enum
+;; {
+;;   GST_TRACER_VALUE_SCOPE_PROCESS,
+;;   GST_TRACER_VALUE_SCOPE_THREAD,
+;;   GST_TRACER_VALUE_SCOPE_ELEMENT,
+;;   GST_TRACER_VALUE_SCOPE_PAD
+;; } GstTracerValueScope;
+
+(define-enum-extended TracerValueScope
+  (in-module "Gst")
+  (c-name "GstTracerValueScope")
+  (values
+    '("process" "GST_TRACER_VALUE_SCOPE_PROCESS" "0")
+    '("thread" "GST_TRACER_VALUE_SCOPE_THREAD" "1")
+    '("element" "GST_TRACER_VALUE_SCOPE_ELEMENT" "2")
+    '("pad" "GST_TRACER_VALUE_SCOPE_PAD" "3")
+  )
+)
+
+;; Original typedef:
+;; typedef enum
+;; {
+;;   GST_TRACER_VALUE_FLAGS_NONE = 0,
+;;   GST_TRACER_VALUE_FLAGS_OPTIONAL = (1 << 0),
+;;   GST_TRACER_VALUE_FLAGS_AGGREGATED = (1 << 1),
+;; } GstTracerValueFlags;
+
+(define-flags-extended TracerValueFlags
+  (in-module "Gst")
+  (c-name "GstTracerValueFlags")
+  (values
+    '("none" "GST_TRACER_VALUE_FLAGS_NONE" "0x0")
+    '("optional" "GST_TRACER_VALUE_FLAGS_OPTIONAL" "(1 << 0)")
+    '("aggregated" "GST_TRACER_VALUE_FLAGS_AGGREGATED" "(1 << 1)")
+  )
+)
+
+;; From gsttracerutils.h
+
+;; Original typedef:
+;; typedef enum /*< skip >*/
+;; {
+;;   GST_TRACER_QUARK_HOOK_PAD_PUSH_PRE = 0,
+;;   GST_TRACER_QUARK_HOOK_PAD_PUSH_POST,
+;;   GST_TRACER_QUARK_HOOK_PAD_PUSH_LIST_PRE,
+;;   GST_TRACER_QUARK_HOOK_PAD_PUSH_LIST_POST,
+;;   GST_TRACER_QUARK_HOOK_PAD_PULL_RANGE_PRE,
+;;   GST_TRACER_QUARK_HOOK_PAD_PULL_RANGE_POST,
+;;   GST_TRACER_QUARK_HOOK_PAD_PUSH_EVENT_PRE ,
+;;   GST_TRACER_QUARK_HOOK_PAD_PUSH_EVENT_POST,
+;;   GST_TRACER_QUARK_HOOK_PAD_QUERY_PRE ,
+;;   GST_TRACER_QUARK_HOOK_PAD_QUERY_POST,
+;;   GST_TRACER_QUARK_HOOK_ELEMENT_POST_MESSAGE_PRE,
+;;   GST_TRACER_QUARK_HOOK_ELEMENT_POST_MESSAGE_POST,
+;;   GST_TRACER_QUARK_HOOK_ELEMENT_QUERY_PRE,
+;;   GST_TRACER_QUARK_HOOK_ELEMENT_QUERY_POST,
+;;   GST_TRACER_QUARK_HOOK_ELEMENT_NEW,
+;;   GST_TRACER_QUARK_HOOK_ELEMENT_ADD_PAD,
+;;   GST_TRACER_QUARK_HOOK_ELEMENT_REMOVE_PAD,
+;;   GST_TRACER_QUARK_HOOK_BIN_ADD_PRE,
+;;   GST_TRACER_QUARK_HOOK_BIN_ADD_POST,
+;;   GST_TRACER_QUARK_HOOK_BIN_REMOVE_PRE,
+;;   GST_TRACER_QUARK_HOOK_BIN_REMOVE_POST,
+;;   GST_TRACER_QUARK_HOOK_PAD_LINK_PRE,
+;;   GST_TRACER_QUARK_HOOK_PAD_LINK_POST,
+;;   GST_TRACER_QUARK_HOOK_PAD_UNLINK_PRE,
+;;   GST_TRACER_QUARK_HOOK_PAD_UNLINK_POST,
+;;   GST_TRACER_QUARK_HOOK_ELEMENT_CHANGE_STATE_PRE,
+;;   GST_TRACER_QUARK_HOOK_ELEMENT_CHANGE_STATE_POST,
+;;   GST_TRACER_QUARK_MAX
+;; } GstTracerQuarkId;
+
+(define-enum-extended TracerQuarkId
+  (in-module "Gst")
+  (c-name "GstTracerQuarkId")
+  (values
+    '("hook-pad-push-pre" "GST_TRACER_QUARK_HOOK_PAD_PUSH_PRE" "0")
+    '("hook-pad-push-post" "GST_TRACER_QUARK_HOOK_PAD_PUSH_POST" "1")
+    '("hook-pad-push-list-pre" "GST_TRACER_QUARK_HOOK_PAD_PUSH_LIST_PRE" "2")
+    '("hook-pad-push-list-post" "GST_TRACER_QUARK_HOOK_PAD_PUSH_LIST_POST" "3")
+    '("hook-pad-pull-range-pre" "GST_TRACER_QUARK_HOOK_PAD_PULL_RANGE_PRE" "4")
+    '("hook-pad-pull-range-post" "GST_TRACER_QUARK_HOOK_PAD_PULL_RANGE_POST" "5")
+    '("hook-pad-push-event-pre" "GST_TRACER_QUARK_HOOK_PAD_PUSH_EVENT_PRE" "6")
+    '("hook-pad-push-event-post" "GST_TRACER_QUARK_HOOK_PAD_PUSH_EVENT_POST" "7")
+    '("hook-pad-query-pre" "GST_TRACER_QUARK_HOOK_PAD_QUERY_PRE" "8")
+    '("hook-pad-query-post" "GST_TRACER_QUARK_HOOK_PAD_QUERY_POST" "9")
+    '("hook-element-post-message-pre" "GST_TRACER_QUARK_HOOK_ELEMENT_POST_MESSAGE_PRE" "10")
+    '("hook-element-post-message-post" "GST_TRACER_QUARK_HOOK_ELEMENT_POST_MESSAGE_POST" "11")
+    '("hook-element-query-pre" "GST_TRACER_QUARK_HOOK_ELEMENT_QUERY_PRE" "12")
+    '("hook-element-query-post" "GST_TRACER_QUARK_HOOK_ELEMENT_QUERY_POST" "13")
+    '("hook-element-new" "GST_TRACER_QUARK_HOOK_ELEMENT_NEW" "14")
+    '("hook-element-add-pad" "GST_TRACER_QUARK_HOOK_ELEMENT_ADD_PAD" "15")
+    '("hook-element-remove-pad" "GST_TRACER_QUARK_HOOK_ELEMENT_REMOVE_PAD" "16")
+    '("hook-bin-add-pre" "GST_TRACER_QUARK_HOOK_BIN_ADD_PRE" "17")
+    '("hook-bin-add-post" "GST_TRACER_QUARK_HOOK_BIN_ADD_POST" "18")
+    '("hook-bin-remove-pre" "GST_TRACER_QUARK_HOOK_BIN_REMOVE_PRE" "19")
+    '("hook-bin-remove-post" "GST_TRACER_QUARK_HOOK_BIN_REMOVE_POST" "20")
+    '("hook-pad-link-pre" "GST_TRACER_QUARK_HOOK_PAD_LINK_PRE" "21")
+    '("hook-pad-link-post" "GST_TRACER_QUARK_HOOK_PAD_LINK_POST" "22")
+    '("hook-pad-unlink-pre" "GST_TRACER_QUARK_HOOK_PAD_UNLINK_PRE" "23")
+    '("hook-pad-unlink-post" "GST_TRACER_QUARK_HOOK_PAD_UNLINK_POST" "24")
+    '("hook-element-change-state-pre" "GST_TRACER_QUARK_HOOK_ELEMENT_CHANGE_STATE_PRE" "25")
+    '("hook-element-change-state-post" "GST_TRACER_QUARK_HOOK_ELEMENT_CHANGE_STATE_POST" "26")
+    '("max" "GST_TRACER_QUARK_MAX" "27")
+  )
+)
+
 ;; From gsttypefind.h
 
 ;; Original typedef:
@@ -2534,7 +2648,8 @@
 ;; {
 ;;   GST_INTERPOLATION_MODE_NONE,
 ;;   GST_INTERPOLATION_MODE_LINEAR,
-;;   GST_INTERPOLATION_MODE_CUBIC
+;;   GST_INTERPOLATION_MODE_CUBIC,
+;;   GST_INTERPOLATION_MODE_CUBIC_MONOTONIC,
 ;; } GstInterpolationMode;
 
 (define-enum-extended InterpolationMode
@@ -2544,6 +2659,7 @@
     '("none" "GST_INTERPOLATION_MODE_NONE" "0")
     '("linear" "GST_INTERPOLATION_MODE_LINEAR" "1")
     '("cubic" "GST_INTERPOLATION_MODE_CUBIC" "2")
+    '("cubic-monotonic" "GST_INTERPOLATION_MODE_CUBIC_MONOTONIC" "3")
   )
 )
 
@@ -2779,7 +2895,7 @@
   (in-module "Gst")
   (c-name "GstQueueLeaky")
   (values
-    '("no" "GST_QUEUE_LEAK_NO_LEAK" "0")
+    '("no" "GST_QUEUE_LEAK_NO_LEAK" "1")
     '("upstream" "GST_QUEUE_LEAK_UPSTREAM" "1")
     '("downstream" "GST_QUEUE_LEAK_DOWNSTREAM" "2")
   )
@@ -2944,6 +3060,29 @@
   )
 )
 
+;; From audio-channel-mixer.h
+
+;; Original typedef:
+;; typedef enum {
+;;   GST_AUDIO_CHANNEL_MIXER_FLAGS_NONE                = 0,
+;;   GST_AUDIO_CHANNEL_MIXER_FLAGS_NON_INTERLEAVED_IN  = (1 << 0),
+;;   GST_AUDIO_CHANNEL_MIXER_FLAGS_NON_INTERLEAVED_OUT = (1 << 1),
+;;   GST_AUDIO_CHANNEL_MIXER_FLAGS_UNPOSITIONED_IN     = (1 << 2),
+;;   GST_AUDIO_CHANNEL_MIXER_FLAGS_UNPOSITIONED_OUT    = (1 << 3)
+;; } GstAudioChannelMixerFlags;
+
+(define-flags-extended AudioChannelMixerFlags
+  (in-module "Gst")
+  (c-name "GstAudioChannelMixerFlags")
+  (values
+    '("none" "GST_AUDIO_CHANNEL_MIXER_FLAGS_NONE" "0x0")
+    '("non-interleaved-in" "GST_AUDIO_CHANNEL_MIXER_FLAGS_NON_INTERLEAVED_IN" "(1 << 0)")
+    '("non-interleaved-out" "GST_AUDIO_CHANNEL_MIXER_FLAGS_NON_INTERLEAVED_OUT" "(1 << 1)")
+    '("unpositioned-in" "GST_AUDIO_CHANNEL_MIXER_FLAGS_UNPOSITIONED_IN" "(1 << 2)")
+    '("unpositioned-out" "GST_AUDIO_CHANNEL_MIXER_FLAGS_UNPOSITIONED_OUT" "(1 << 3)")
+  )
+)
+
 ;; From audio-channels.h
 
 ;; Original typedef:
@@ -3024,6 +3163,25 @@
   )
 )
 
+;; From audio-converter.h
+
+;; Original typedef:
+;; typedef enum {
+;;   GST_AUDIO_CONVERTER_FLAG_NONE            = 0,
+;;   GST_AUDIO_CONVERTER_FLAG_IN_WRITABLE     = (1 << 0),
+;;   GST_AUDIO_CONVERTER_FLAG_VARIABLE_RATE   = (1 << 1)
+;; } GstAudioConverterFlags;
+
+(define-flags-extended AudioConverterFlags
+  (in-module "Gst")
+  (c-name "GstAudioConverterFlags")
+  (values
+    '("none" "GST_AUDIO_CONVERTER_FLAG_NONE" "0x0")
+    '("in-writable" "GST_AUDIO_CONVERTER_FLAG_IN_WRITABLE" "(1 << 0)")
+    '("variable-rate" "GST_AUDIO_CONVERTER_FLAG_VARIABLE_RATE" "(1 << 1)")
+  )
+)
+
 ;; From audio-format.h
 
 ;; Original typedef:
@@ -3163,7 +3321,8 @@
 ;; Original typedef:
 ;; typedef enum
 ;; {
-;;   GST_AUDIO_PACK_FLAG_NONE       = 0
+;;   GST_AUDIO_PACK_FLAG_NONE             = 0,
+;;   GST_AUDIO_PACK_FLAG_TRUNCATE_RANGE   = (1 << 0)
 ;; } GstAudioPackFlags;
 
 (define-flags-extended AudioPackFlags
@@ -3171,6 +3330,7 @@
   (c-name "GstAudioPackFlags")
   (values
     '("none" "GST_AUDIO_PACK_FLAG_NONE" "0x0")
+    '("truncate-range" "GST_AUDIO_PACK_FLAG_TRUNCATE_RANGE" "(1 << 0)")
   )
 )
 
@@ -3206,6 +3366,66 @@
   )
 )
 
+;; From audio-quantize.h
+
+;; Original typedef:
+;; typedef enum
+;; {
+;;   GST_AUDIO_DITHER_NONE = 0,
+;;   GST_AUDIO_DITHER_RPDF,
+;;   GST_AUDIO_DITHER_TPDF,
+;;   GST_AUDIO_DITHER_TPDF_HF
+;; } GstAudioDitherMethod;
+
+(define-enum-extended AudioDitherMethod
+  (in-module "Gst")
+  (c-name "GstAudioDitherMethod")
+  (values
+    '("none" "GST_AUDIO_DITHER_NONE" "0")
+    '("rpdf" "GST_AUDIO_DITHER_RPDF" "1")
+    '("tpdf" "GST_AUDIO_DITHER_TPDF" "2")
+    '("tpdf-hf" "GST_AUDIO_DITHER_TPDF_HF" "3")
+  )
+)
+
+;; Original typedef:
+;; typedef enum
+;; {
+;;   GST_AUDIO_NOISE_SHAPING_NONE = 0,
+;;   GST_AUDIO_NOISE_SHAPING_ERROR_FEEDBACK,
+;;   GST_AUDIO_NOISE_SHAPING_SIMPLE,
+;;   GST_AUDIO_NOISE_SHAPING_MEDIUM,
+;;   GST_AUDIO_NOISE_SHAPING_HIGH
+;; } GstAudioNoiseShapingMethod;
+
+(define-enum-extended AudioNoiseShapingMethod
+  (in-module "Gst")
+  (c-name "GstAudioNoiseShapingMethod")
+  (values
+    '("none" "GST_AUDIO_NOISE_SHAPING_NONE" "0")
+    '("error-feedback" "GST_AUDIO_NOISE_SHAPING_ERROR_FEEDBACK" "1")
+    '("simple" "GST_AUDIO_NOISE_SHAPING_SIMPLE" "2")
+    '("medium" "GST_AUDIO_NOISE_SHAPING_MEDIUM" "3")
+    '("high" "GST_AUDIO_NOISE_SHAPING_HIGH" "4")
+  )
+)
+
+;; Original typedef:
+;; typedef enum
+;; {
+;;   GST_AUDIO_QUANTIZE_FLAG_NONE            = 0,
+;;   GST_AUDIO_QUANTIZE_FLAG_NON_INTERLEAVED = (1 << 0)
+;; } GstAudioQuantizeFlags;
+
+(define-flags-extended AudioQuantizeFlags
+  (in-module "Gst")
+  (c-name "GstAudioQuantizeFlags")
+  (values
+    '("none" "GST_AUDIO_QUANTIZE_FLAG_NONE" "0x0")
+    '("non-interleaved" "GST_AUDIO_QUANTIZE_FLAG_NON_INTERLEAVED" "(1 << 0)")
+  )
+)
+
 ;; From gstaudiobasesink.h
 
 ;; Original typedef:
@@ -3391,6 +3611,39 @@
   )
 )
 
+;; From gstaudiovisualizer.h
+
+;; Original typedef:
+;; typedef enum {
+;;   GST_AUDIO_VISUALIZER_SHADER_NONE,
+;;   GST_AUDIO_VISUALIZER_SHADER_FADE,
+;;   GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_UP,
+;;   GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_DOWN,
+;;   GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_LEFT,
+;;   GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_RIGHT,
+;;   GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_OUT,
+;;   GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_IN,
+;;   GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_OUT,
+;;   GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_IN
+;; } GstAudioVisualizerShader;
+
+(define-enum-extended AudioVisualizerShader
+  (in-module "Gst")
+  (c-name "GstAudioVisualizerShader")
+  (values
+    '("none" "GST_AUDIO_VISUALIZER_SHADER_NONE" "0")
+    '("fade" "GST_AUDIO_VISUALIZER_SHADER_FADE" "1")
+    '("fade-and-move-up" "GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_UP" "2")
+    '("fade-and-move-down" "GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_DOWN" "3")
+    '("fade-and-move-left" "GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_LEFT" "4")
+    '("fade-and-move-right" "GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_RIGHT" "5")
+    '("fade-and-move-horiz-out" "GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_OUT" "6")
+    '("fade-and-move-horiz-in" "GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_IN" "7")
+    '("fade-and-move-vert-out" "GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_OUT" "8")
+    '("fade-and-move-vert-in" "GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_IN" "9")
+  )
+)
+
 ;; From gstdiscoverer.h
 
 ;; Original typedef:
@@ -3587,6 +3840,24 @@
   )
 )
 
+;; From gstrtpbuffer.h
+
+;; Original typedef:
+;; typedef enum {
+;;   GST_RTP_BUFFER_MAP_FLAG_SKIP_PADDING = (GST_MAP_FLAG_LAST << 0),
+;;   GST_RTP_BUFFER_MAP_FLAG_LAST         = (GST_MAP_FLAG_LAST << 8)
+;;   /* 8 more flags possible afterwards */
+;; } GstRTPBufferMapFlags;
+
+(define-flags-extended RTPBufferMapFlags
+  (in-module "Gst")
+  (c-name "GstRTPBufferMapFlags")
+  (values
+    '("skip-padding" "GST_RTP_BUFFER_MAP_FLAG_SKIP_PADDING" "(GST_MAP_FLAG_LAST << 0)")
+    '("last" "GST_RTP_BUFFER_MAP_FLAG_LAST" "(GST_MAP_FLAG_LAST << 8)")
+  )
+)
+
 ;; From gstrtpdefs.h
 
 ;; Original typedef:
@@ -3958,7 +4229,7 @@
 ;;   GST_RTSP_HDR_HOST,                /* Host */
 ;;   GST_RTSP_HDR_PRAGMA,              /* Pragma */
 ;;   GST_RTSP_HDR_X_SERVER_IP_ADDRESS, /* X-Server-IP-Address */
-;;   GST_RTSP_HDR_X_SESSIONCOOKIE,     /* X-Sessioncookie */
+;;   GST_RTSP_HDR_X_SESSIONCOOKIE,     /* x-sessioncookie */
 ;; 
 ;;   GST_RTSP_HDR_RTCP_INTERVAL,       /* RTCP-Interval */
 ;; 
@@ -5000,7 +5271,8 @@
 ;;   GST_VIDEO_TRANSFER_GAMMA28,
 ;;   GST_VIDEO_TRANSFER_LOG100,
 ;;   GST_VIDEO_TRANSFER_LOG316,
-;;   GST_VIDEO_TRANSFER_BT2020_12
+;;   GST_VIDEO_TRANSFER_BT2020_12,
+;;   GST_VIDEO_TRANSFER_ADOBERGB
 ;; } GstVideoTransferFunction;
 
 (define-enum-extended VideoTransferFunction
@@ -5019,6 +5291,7 @@
     '("log100" "GST_VIDEO_TRANSFER_LOG100" "9")
     '("log316" "GST_VIDEO_TRANSFER_LOG316" "10")
     '("bt2020-12" "GST_VIDEO_TRANSFER_BT2020_12" "11")
+    '("adobergb" "GST_VIDEO_TRANSFER_ADOBERGB" "12")
   )
 )
 
@@ -5031,7 +5304,8 @@
 ;;   GST_VIDEO_COLOR_PRIMARIES_SMPTE170M,
 ;;   GST_VIDEO_COLOR_PRIMARIES_SMPTE240M,
 ;;   GST_VIDEO_COLOR_PRIMARIES_FILM,
-;;   GST_VIDEO_COLOR_PRIMARIES_BT2020
+;;   GST_VIDEO_COLOR_PRIMARIES_BT2020,
+;;   GST_VIDEO_COLOR_PRIMARIES_ADOBERGB
 ;; } GstVideoColorPrimaries;
 
 (define-enum-extended VideoColorPrimaries
@@ -5046,6 +5320,7 @@
     '("smpte240m" "GST_VIDEO_COLOR_PRIMARIES_SMPTE240M" "5")
     '("film" "GST_VIDEO_COLOR_PRIMARIES_FILM" "6")
     '("bt2020" "GST_VIDEO_COLOR_PRIMARIES_BT2020" "7")
+    '("adobergb" "GST_VIDEO_COLOR_PRIMARIES_ADOBERGB" "8")
   )
 )
 
@@ -5695,50 +5970,6 @@
   )
 )
 
-;; From audioconvert.h
-
-;; Original typedef:
-;; typedef enum
-;; {
-;;   DITHER_NONE = 0,
-;;   DITHER_RPDF,
-;;   DITHER_TPDF,
-;;   DITHER_TPDF_HF
-;; } GstAudioConvertDithering;
-
-(define-enum-extended AudioConvertDithering
-  (in-module "Gst")
-  (c-name "GstAudioConvertDithering")
-  (values
-    '("none" "DITHER_NONE" "0")
-    '("rpdf" "DITHER_RPDF" "1")
-    '("tpdf" "DITHER_TPDF" "2")
-    '("tpdf-hf" "DITHER_TPDF_HF" "3")
-  )
-)
-
-;; Original typedef:
-;; typedef enum
-;; {
-;;   NOISE_SHAPING_NONE = 0,
-;;   NOISE_SHAPING_ERROR_FEEDBACK,
-;;   NOISE_SHAPING_SIMPLE,
-;;   NOISE_SHAPING_MEDIUM,
-;;   NOISE_SHAPING_HIGH
-;; } GstAudioConvertNoiseShaping;
-
-(define-enum-extended AudioConvertNoiseShaping
-  (in-module "Gst")
-  (c-name "GstAudioConvertNoiseShaping")
-  (values
-    '("none" "NOISE_SHAPING_NONE" "0")
-    '("error-feedback" "NOISE_SHAPING_ERROR_FEEDBACK" "1")
-    '("simple" "NOISE_SHAPING_SIMPLE" "2")
-    '("medium" "NOISE_SHAPING_MEDIUM" "3")
-    '("high" "NOISE_SHAPING_HIGH" "4")
-  )
-)
-
 ;; From speex_resampler.h
 
 ;; Original typedef:
@@ -6192,39 +6423,6 @@
   )
 )
 
-;; From gstaudiovisualizer.h
-
-;; Original typedef:
-;; typedef enum {
-;;   GST_AUDIO_VISUALIZER_SHADER_NONE,
-;;   GST_AUDIO_VISUALIZER_SHADER_FADE,
-;;   GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_UP,
-;;   GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_DOWN,
-;;   GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_LEFT,
-;;   GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_RIGHT,
-;;   GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_OUT,
-;;   GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_IN,
-;;   GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_OUT,
-;;   GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_IN
-;; } GstAudioVisualizerShader;
-
-(define-enum-extended AudioVisualizerShader
-  (in-module "Gst")
-  (c-name "GstAudioVisualizerShader")
-  (values
-    '("none" "GST_AUDIO_VISUALIZER_SHADER_NONE" "0")
-    '("fade" "GST_AUDIO_VISUALIZER_SHADER_FADE" "1")
-    '("fade-and-move-up" "GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_UP" "2")
-    '("fade-and-move-down" "GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_DOWN" "3")
-    '("fade-and-move-left" "GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_LEFT" "4")
-    '("fade-and-move-right" "GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_RIGHT" "5")
-    '("fade-and-move-horiz-out" "GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_OUT" "6")
-    '("fade-and-move-horiz-in" "GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_IN" "7")
-    '("fade-and-move-vert-out" "GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_OUT" "8")
-    '("fade-and-move-vert-in" "GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_IN" "9")
-  )
-)
-
 ;; From dirac_parse.h
 
 ;; Original typedef:
@@ -6473,6 +6671,26 @@
   )
 )
 
+;; From gstopusenc.h
+
+;; Original typedef:
+;; typedef enum
+;; {
+;;   BITRATE_TYPE_CBR,
+;;   BITRATE_TYPE_VBR,
+;;   BITRATE_TYPE_CONSTRAINED_VBR,
+;; } GstOpusEncBitrateType;
+
+(define-enum-extended OpusEncBitrateType
+  (in-module "Gst")
+  (c-name "GstOpusEncBitrateType")
+  (values
+    '("cbr" "BITRATE_TYPE_CBR" "0")
+    '("vbr" "BITRATE_TYPE_VBR" "1")
+    '("constrained-vbr" "BITRATE_TYPE_CONSTRAINED_VBR" "2")
+  )
+)
+
 ;; From gstbasetextoverlay.h
 
 ;; Original typedef:
@@ -6481,7 +6699,8 @@
 ;;     GST_BASE_TEXT_OVERLAY_VALIGN_BOTTOM,
 ;;     GST_BASE_TEXT_OVERLAY_VALIGN_TOP,
 ;;     GST_BASE_TEXT_OVERLAY_VALIGN_POS,
-;;     GST_BASE_TEXT_OVERLAY_VALIGN_CENTER
+;;     GST_BASE_TEXT_OVERLAY_VALIGN_CENTER,
+;;     GST_BASE_TEXT_OVERLAY_VALIGN_ABSOLUTE
 ;; } GstBaseTextOverlayVAlign;
 
 (define-enum-extended BaseTextOverlayVAlign
@@ -6493,6 +6712,7 @@
     '("top" "GST_BASE_TEXT_OVERLAY_VALIGN_TOP" "2")
     '("pos" "GST_BASE_TEXT_OVERLAY_VALIGN_POS" "3")
     '("center" "GST_BASE_TEXT_OVERLAY_VALIGN_CENTER" "4")
+    '("absolute" "GST_BASE_TEXT_OVERLAY_VALIGN_ABSOLUTE" "5")
   )
 )
 
@@ -6502,7 +6722,8 @@
 ;;     GST_BASE_TEXT_OVERLAY_HALIGN_CENTER,
 ;;     GST_BASE_TEXT_OVERLAY_HALIGN_RIGHT,
 ;;     GST_BASE_TEXT_OVERLAY_HALIGN_UNUSED,
-;;     GST_BASE_TEXT_OVERLAY_HALIGN_POS
+;;     GST_BASE_TEXT_OVERLAY_HALIGN_POS,
+;;     GST_BASE_TEXT_OVERLAY_HALIGN_ABSOLUTE
 ;; } GstBaseTextOverlayHAlign;
 
 (define-enum-extended BaseTextOverlayHAlign
@@ -6514,6 +6735,7 @@
     '("right" "GST_BASE_TEXT_OVERLAY_HALIGN_RIGHT" "2")
     '("unused" "GST_BASE_TEXT_OVERLAY_HALIGN_UNUSED" "3")
     '("pos" "GST_BASE_TEXT_OVERLAY_HALIGN_POS" "4")
+    '("absolute" "GST_BASE_TEXT_OVERLAY_HALIGN_ABSOLUTE" "5")
   )
 )
 
@@ -6645,18 +6867,6 @@
   )
 )
 
-;; Handwritten for the filesink plug-in (Gst::FileSink).
-(define-enum-extended FileSinkBufferMode
-  (in-module "Gst")
-  (c-name "GstFileSinkBufferMode")
-  (values
-    '("default" "GST_FILE_SINK_BUFFER_MODE_DEFAULT" "-1")
-    '("full" "GST_FILE_SINK_BUFFER_MODE_FULL" "0")
-    '("line" "GST_FILE_SINK_BUFFER_MODE_LINE" "1")
-    '("unbuffered" "GST_FILE_SINK_BUFFER_MODE_UNBUFFERED" "2")
-  )
-)
-
 ;; Handwritten for CdParanoiaSrc plugin (values taken from output of
 ;; `gst-inspect cdparanoiasrc' - "paranoia-mode" property information)
 (define-enum-extended CdParanoiaMode
@@ -6672,34 +6882,7 @@
   )
 )
 
-;; Handwritten for MultiSocketSink plugin (values taken from output of
-;; `gst-inspect multisocketsink' - "sync-method" property information)
-(define-enum-extended MultiHandleSinkSyncMethod
-  (in-module "Gst")
-  (c-name "GstMultiHandleSinkSyncMethod")
-  (values
-    '("latest" "GST_SYNC_METHOD_LATEST" "0")
-    '("next-keyframe" "GST_SYNC_METHOD_NEXT_KEYFRAME" "1")
-    '("latest-keyframe" "GST_SYNC_METHOD_LATEST_KEYFRAME" "2")
-    '("burst" "GST_SYNC_METHOD_BURST" "3")
-    '("burst-keyframe" "GST_SYNC_METHOD_BURST_KEYFRAME" "4")
-    '("burst-with-keyframe" "GST_SYNC_METHOD_BURST_WITH_KEYFRAME" "5")
-  )
-)
-
-;; Handwritten for OutputSelector plugin (values taken from output of
-;; `gst-inspect output-selector' - "pad-negotiation-mode" property information)
-(define-enum-extended OutputSelectorPadNegotiationMode
-  (in-module "Gst")
-  (c-name "GstOutputSelectorPadNegotiationMode")
-  (values
-    '("none" "GST_OUTPUT_SELECTOR_PAD_NEGOTIATION_MODE_NONE" "0")
-    '("all" "GST_OUTPUT_SELECTOR_PAD_NEGOTIATION_MODE_ALL" "1")
-    '("active" "GST_OUTPUT_SELECTOR_PAD_NEGOTIATION_MODE_ACTIVE" "2")
-  )
-)
-
-;; Handwritten for EncodeBin plugin (values taken from file 
+;; Handwritten for EncodeBin plugin (values taken from file
 ;; gst-plugins-base/gst/encoding/gstencodebin.c, enum used for 'flags' property)
 (define-enum-extended EncodeBinFlags
   (in-module "Gst")
@@ -6710,60 +6893,6 @@
   )
 )
 
-;; Handwritten for MultiSocketSink plugin (values taken from file 
-;; gst-plugins-base/gst/tcp/gstmultihandlesink.c, enum used for 'client-removed signal)
-(define-enum-extended MultiHandleSinkClientStatus
-  (in-module "Gst")
-  (c-name "GstMultiHandleSinkClientStatus")
-  (values
-    '("ok" "GST_CLIENT_STATUS_OK" "0")
-    '("closed" "GST_CLIENT_STATUS_CLOSED" "1")
-    '("removed" "GST_CLIENT_STATUS_REMOVED" "2")
-    '("slow" "GST_CLIENT_STATUS_SLOW" "3")
-    '("error" "GST_CLIENT_STATUS_ERROR" "4")
-    '("duplicate" "GST_CLIENT_STATUS_DUPLICATE" "5")
-    '("flushing" "GST_CLIENT_STATUS_FLUSHING" "6")
-  )
-)
-
-;; Handwritten for PlaySink plugin (values taken from file 
-;; gst-plugins-base/gst/playback/gstplaysink.c, enum used for 'send-event-mode' property)
-(define-enum-extended PlaySinkSendEventMode
-  (in-module "Gst")
-  (c-name "GstPlaySinkSendEventMode")
-  (values
-    '("default" "MODE_DEFAULT" "0")
-    '("first" "MODE_FIRST" "1")
-  )
-)
-
-;; Handwritten for the filesink plug-in (Gst::FileSink).
-(define-enum-extended FileSinkBufferMode
-  (in-module "Gst")
-  (c-name "GstFileSinkBufferMode")
-  (values
-    '("default" "GST_FILE_SINK_BUFFER_MODE_DEFAULT" "-1")
-    '("full" "GST_FILE_SINK_BUFFER_MODE_FULL" "0")
-    '("line" "GST_FILE_SINK_BUFFER_MODE_LINE" "1")
-    '("unbuffered" "GST_FILE_SINK_BUFFER_MODE_UNBUFFERED" "2")
-  )
-)
-
-;; Handwritten for CdParanoiaSrc plugin (values taken from output of
-;; `gst-inspect cdparanoiasrc' - "paranoia-mode" property information)
-(define-enum-extended CdParanoiaMode
-  (in-module "Gst")
-  (c-name "GstCdParanoiaMode")
-  (values
-    '("disable" "GST_PARANOIA_MODE_DISABLE" "1<<0")
-    '("fragment" "GST_PARANOIA_MODE_FRAGMENT" "1<<1")
-    '("overlap" "GST_PARANOIA_MODE_OVERLAP" "1<<2")
-    '("scratch" "GST_PARANOIA_MODE_SCRATCH" "1<<3")
-    '("repair" "GST_PARANOIA_MODE_REPAIR" "1<<4")
-    '("full" "GST_PARANOIA_MODE_FULL" "0xff")
-  )
-)
-
 ;; Handwritten for MultiSocketSink plugin (values taken from output of
 ;; `gst-inspect multisocketsink' - "sync-method" property information)
 (define-enum-extended MultiHandleSinkSyncMethod
@@ -6779,30 +6908,7 @@
   )
 )
 
-;; Handwritten for OutputSelector plugin (values taken from output of
-;; `gst-inspect output-selector' - "pad-negotiation-mode" property information)
-(define-enum-extended OutputSelectorPadNegotiationMode
-  (in-module "Gst")
-  (c-name "GstOutputSelectorPadNegotiationMode")
-  (values
-    '("none" "GST_OUTPUT_SELECTOR_PAD_NEGOTIATION_MODE_NONE" "0")
-    '("all" "GST_OUTPUT_SELECTOR_PAD_NEGOTIATION_MODE_ALL" "1")
-    '("active" "GST_OUTPUT_SELECTOR_PAD_NEGOTIATION_MODE_ACTIVE" "2")
-  )
-)
-
-;; Handwritten for EncodeBin plugin (values taken from file 
-;; gst-plugins-base/gst/encoding/gstencodebin.c, enum used for 'flags' property)
-(define-enum-extended EncodeBinFlags
-  (in-module "Gst")
-  (c-name "GstEncodeBinFlags")
-  (values
-    '("no-audio-conversion" "GST_ENCODEBIN_FLAG_NO_AUDIO_CONVERSION" "1<<0")
-    '("no-video-conversion" "GST_ENCODEBIN_FLAG_NO_VIDEO_CONVERSION" "1<<1")
-  )
-)
-
-;; Handwritten for MultiSocketSink plugin (values taken from file 
+;; Handwritten for MultiSocketSink plugin (values taken from file
 ;; gst-plugins-base/gst/tcp/gstmultihandlesink.c, enum used for 'client-removed' signal)
 (define-enum-extended MultiHandleSinkClientStatus
   (in-module "Gst")
@@ -6818,7 +6924,7 @@
   )
 )
 
-;; Handwritten for PlaySink plugin (values taken from file 
+;; Handwritten for PlaySink plugin (values taken from file
 ;; gst-plugins-base/gst/playback/gstplaysink.c, enum used for 'send-event-mode' property)
 (define-enum-extended PlaySinkSendEventMode
   (in-module "Gst")
diff --git a/gstreamer/src/gst_enums.defs.patch b/gstreamer/src/gst_enums.defs.patch
index b9ae168..ac628dc 100644
--- a/gstreamer/src/gst_enums.defs.patch
+++ b/gstreamer/src/gst_enums.defs.patch
@@ -1,6 +1,8 @@
+diff --git a/gstreamer/src/gst_enums.defs b/gstreamer/src/gst_enums.defs
+index 41a303f..faf46c8 100644
 --- a/gstreamer/src/gst_enums.defs
 +++ b/gstreamer/src/gst_enums.defs
-@@ -2750,10 +2750,11 @@
+@@ -2891,10 +2891,11 @@
  ;;   GST_QUEUE_LEAK_DOWNSTREAM     = 2
  ;; };
  
@@ -10,11 +12,11 @@
 -  (c-name "")
 +  (c-name "GstQueueLeaky")
    (values
-+    '("no" "GST_QUEUE_LEAK_NO_LEAK" "0")
++    '("no" "GST_QUEUE_LEAK_NO_LEAK" "1")
      '("upstream" "GST_QUEUE_LEAK_UPSTREAM" "1")
      '("downstream" "GST_QUEUE_LEAK_DOWNSTREAM" "2")
    )
-@@ -6521,9 +6522,9 @@
+@@ -6768,9 +6769,9 @@
    (in-module "Gst")
    (c-name "GstBaseTextOverlayLineAlign")
    (values
@@ -27,7 +29,7 @@
    )
  )
  
-@@ -6574,9 +6575,9 @@
+@@ -6821,9 +6822,9 @@
    (in-module "Gst")
    (c-name "GstTextRenderLineAlign")
    (values
@@ -40,22 +42,10 @@
    )
  )
  
-@@ -6619,3 +6620,186 @@
+@@ -6866,3 +6867,70 @@
    )
  )
  
-+;; Handwritten for the filesink plug-in (Gst::FileSink).
-+(define-enum-extended FileSinkBufferMode
-+  (in-module "Gst")
-+  (c-name "GstFileSinkBufferMode")
-+  (values
-+    '("default" "GST_FILE_SINK_BUFFER_MODE_DEFAULT" "-1")
-+    '("full" "GST_FILE_SINK_BUFFER_MODE_FULL" "0")
-+    '("line" "GST_FILE_SINK_BUFFER_MODE_LINE" "1")
-+    '("unbuffered" "GST_FILE_SINK_BUFFER_MODE_UNBUFFERED" "2")
-+  )
-+)
-+
 +;; Handwritten for CdParanoiaSrc plugin (values taken from output of
 +;; `gst-inspect cdparanoiasrc' - "paranoia-mode" property information)
 +(define-enum-extended CdParanoiaMode
@@ -71,34 +61,7 @@
 +  )
 +)
 +
-+;; Handwritten for MultiSocketSink plugin (values taken from output of
-+;; `gst-inspect multisocketsink' - "sync-method" property information)
-+(define-enum-extended MultiHandleSinkSyncMethod
-+  (in-module "Gst")
-+  (c-name "GstMultiHandleSinkSyncMethod")
-+  (values
-+    '("latest" "GST_SYNC_METHOD_LATEST" "0")
-+    '("next-keyframe" "GST_SYNC_METHOD_NEXT_KEYFRAME" "1")
-+    '("latest-keyframe" "GST_SYNC_METHOD_LATEST_KEYFRAME" "2")
-+    '("burst" "GST_SYNC_METHOD_BURST" "3")
-+    '("burst-keyframe" "GST_SYNC_METHOD_BURST_KEYFRAME" "4")
-+    '("burst-with-keyframe" "GST_SYNC_METHOD_BURST_WITH_KEYFRAME" "5")
-+  )
-+)
-+
-+;; Handwritten for OutputSelector plugin (values taken from output of
-+;; `gst-inspect output-selector' - "pad-negotiation-mode" property information)
-+(define-enum-extended OutputSelectorPadNegotiationMode
-+  (in-module "Gst")
-+  (c-name "GstOutputSelectorPadNegotiationMode")
-+  (values
-+    '("none" "GST_OUTPUT_SELECTOR_PAD_NEGOTIATION_MODE_NONE" "0")
-+    '("all" "GST_OUTPUT_SELECTOR_PAD_NEGOTIATION_MODE_ALL" "1")
-+    '("active" "GST_OUTPUT_SELECTOR_PAD_NEGOTIATION_MODE_ACTIVE" "2")
-+  )
-+)
-+
-+;; Handwritten for EncodeBin plugin (values taken from file 
++;; Handwritten for EncodeBin plugin (values taken from file
 +;; gst-plugins-base/gst/encoding/gstencodebin.c, enum used for 'flags' property)
 +(define-enum-extended EncodeBinFlags
 +  (in-module "Gst")
@@ -109,60 +72,6 @@
 +  )
 +)
 +
-+;; Handwritten for MultiSocketSink plugin (values taken from file 
-+;; gst-plugins-base/gst/tcp/gstmultihandlesink.c, enum used for 'client-removed signal)
-+(define-enum-extended MultiHandleSinkClientStatus
-+  (in-module "Gst")
-+  (c-name "GstMultiHandleSinkClientStatus")
-+  (values
-+    '("ok" "GST_CLIENT_STATUS_OK" "0")
-+    '("closed" "GST_CLIENT_STATUS_CLOSED" "1")
-+    '("removed" "GST_CLIENT_STATUS_REMOVED" "2")
-+    '("slow" "GST_CLIENT_STATUS_SLOW" "3")
-+    '("error" "GST_CLIENT_STATUS_ERROR" "4")
-+    '("duplicate" "GST_CLIENT_STATUS_DUPLICATE" "5")
-+    '("flushing" "GST_CLIENT_STATUS_FLUSHING" "6")
-+  )
-+)
-+
-+;; Handwritten for PlaySink plugin (values taken from file 
-+;; gst-plugins-base/gst/playback/gstplaysink.c, enum used for 'send-event-mode' property)
-+(define-enum-extended PlaySinkSendEventMode
-+  (in-module "Gst")
-+  (c-name "GstPlaySinkSendEventMode")
-+  (values
-+    '("default" "MODE_DEFAULT" "0")
-+    '("first" "MODE_FIRST" "1")
-+  )
-+)
-+
-+;; Handwritten for the filesink plug-in (Gst::FileSink).
-+(define-enum-extended FileSinkBufferMode
-+  (in-module "Gst")
-+  (c-name "GstFileSinkBufferMode")
-+  (values
-+    '("default" "GST_FILE_SINK_BUFFER_MODE_DEFAULT" "-1")
-+    '("full" "GST_FILE_SINK_BUFFER_MODE_FULL" "0")
-+    '("line" "GST_FILE_SINK_BUFFER_MODE_LINE" "1")
-+    '("unbuffered" "GST_FILE_SINK_BUFFER_MODE_UNBUFFERED" "2")
-+  )
-+)
-+
-+;; Handwritten for CdParanoiaSrc plugin (values taken from output of
-+;; `gst-inspect cdparanoiasrc' - "paranoia-mode" property information)
-+(define-enum-extended CdParanoiaMode
-+  (in-module "Gst")
-+  (c-name "GstCdParanoiaMode")
-+  (values
-+    '("disable" "GST_PARANOIA_MODE_DISABLE" "1<<0")
-+    '("fragment" "GST_PARANOIA_MODE_FRAGMENT" "1<<1")
-+    '("overlap" "GST_PARANOIA_MODE_OVERLAP" "1<<2")
-+    '("scratch" "GST_PARANOIA_MODE_SCRATCH" "1<<3")
-+    '("repair" "GST_PARANOIA_MODE_REPAIR" "1<<4")
-+    '("full" "GST_PARANOIA_MODE_FULL" "0xff")
-+  )
-+)
-+
 +;; Handwritten for MultiSocketSink plugin (values taken from output of
 +;; `gst-inspect multisocketsink' - "sync-method" property information)
 +(define-enum-extended MultiHandleSinkSyncMethod
@@ -178,30 +87,7 @@
 +  )
 +)
 +
-+;; Handwritten for OutputSelector plugin (values taken from output of
-+;; `gst-inspect output-selector' - "pad-negotiation-mode" property information)
-+(define-enum-extended OutputSelectorPadNegotiationMode
-+  (in-module "Gst")
-+  (c-name "GstOutputSelectorPadNegotiationMode")
-+  (values
-+    '("none" "GST_OUTPUT_SELECTOR_PAD_NEGOTIATION_MODE_NONE" "0")
-+    '("all" "GST_OUTPUT_SELECTOR_PAD_NEGOTIATION_MODE_ALL" "1")
-+    '("active" "GST_OUTPUT_SELECTOR_PAD_NEGOTIATION_MODE_ACTIVE" "2")
-+  )
-+)
-+
-+;; Handwritten for EncodeBin plugin (values taken from file 
-+;; gst-plugins-base/gst/encoding/gstencodebin.c, enum used for 'flags' property)
-+(define-enum-extended EncodeBinFlags
-+  (in-module "Gst")
-+  (c-name "GstEncodeBinFlags")
-+  (values
-+    '("no-audio-conversion" "GST_ENCODEBIN_FLAG_NO_AUDIO_CONVERSION" "1<<0")
-+    '("no-video-conversion" "GST_ENCODEBIN_FLAG_NO_VIDEO_CONVERSION" "1<<1")
-+  )
-+)
-+
-+;; Handwritten for MultiSocketSink plugin (values taken from file 
++;; Handwritten for MultiSocketSink plugin (values taken from file
 +;; gst-plugins-base/gst/tcp/gstmultihandlesink.c, enum used for 'client-removed' signal)
 +(define-enum-extended MultiHandleSinkClientStatus
 +  (in-module "Gst")
@@ -217,7 +103,7 @@
 +  )
 +)
 +
-+;; Handwritten for PlaySink plugin (values taken from file 
++;; Handwritten for PlaySink plugin (values taken from file
 +;; gst-plugins-base/gst/playback/gstplaysink.c, enum used for 'send-event-mode' property)
 +(define-enum-extended PlaySinkSendEventMode
 +  (in-module "Gst")
diff --git a/gstreamer/src/gst_methods.defs b/gstreamer/src/gst_methods.defs
index 5d074ae..37f1d9f 100644
--- a/gstreamer/src/gst_methods.defs
+++ b/gstreamer/src/gst_methods.defs
@@ -294,6 +294,20 @@
   (gtype-id "GST_TYPE_INTERPOLATION_CONTROL_SOURCE")
 )
 
+(define-object Tracer
+  (in-module "Gst")
+  (parent "GstObject")
+  (c-name "GstTracer")
+  (gtype-id "GST_TYPE_TRACER")
+)
+
+(define-object TracerFactory
+  (in-module "Gst")
+  (parent "GstPluginFeature")
+  (c-name "GstTracerFactory")
+  (gtype-id "GST_TYPE_TRACER_FACTORY")
+)
+
 (define-object TriggerControlSource
   (in-module "Gst")
   (parent "GstTimedValueControlSource")
@@ -1125,6 +1139,7 @@
     '("could-not-set-property" "GST_PARSE_ERROR_COULD_NOT_SET_PROPERTY")
     '("empty-bin" "GST_PARSE_ERROR_EMPTY_BIN")
     '("empty" "GST_PARSE_ERROR_EMPTY")
+    '("delayed-link" "GST_PARSE_ERROR_DELAYED_LINK")
   )
 )
 
@@ -1191,6 +1206,7 @@
     '("recurse" "GST_PLUGIN_DEPENDENCY_FLAG_RECURSE")
     '("paths-are-default-only" "GST_PLUGIN_DEPENDENCY_FLAG_PATHS_ARE_DEFAULT_ONLY")
     '("file-name-is-suffix" "GST_PLUGIN_DEPENDENCY_FLAG_FILE_NAME_IS_SUFFIX")
+    '("file-name-is-prefix" "GST_PLUGIN_DEPENDENCY_FLAG_FILE_NAME_IS_PREFIX")
   )
 )
 
@@ -1429,6 +1445,65 @@
   )
 )
 
+(define-enum TracerValueScope
+  (in-module "Gst")
+  (c-name "GstTracerValueScope")
+  (gtype-id "GST_TYPE_TRACER_VALUE_SCOPE")
+  (values
+    '("process" "GST_TRACER_VALUE_SCOPE_PROCESS")
+    '("thread" "GST_TRACER_VALUE_SCOPE_THREAD")
+    '("element" "GST_TRACER_VALUE_SCOPE_ELEMENT")
+    '("pad" "GST_TRACER_VALUE_SCOPE_PAD")
+  )
+)
+
+(define-flags TracerValueFlags
+  (in-module "Gst")
+  (c-name "GstTracerValueFlags")
+  (gtype-id "GST_TYPE_TRACER_VALUE_FLAGS")
+  (values
+    '("none" "GST_TRACER_VALUE_FLAGS_NONE")
+    '("optional" "GST_TRACER_VALUE_FLAGS_OPTIONAL")
+    '("aggregated" "GST_TRACER_VALUE_FLAGS_AGGREGATED")
+  )
+)
+
+(define-enum TracerQuarkId
+  (in-module "Gst")
+  (c-name "GstTracerQuarkId")
+  (gtype-id "GST_TYPE_TRACER_QUARK_ID")
+  (values
+    '("hook-pad-push-pre" "GST_TRACER_QUARK_HOOK_PAD_PUSH_PRE")
+    '("hook-pad-push-post" "GST_TRACER_QUARK_HOOK_PAD_PUSH_POST")
+    '("hook-pad-push-list-pre" "GST_TRACER_QUARK_HOOK_PAD_PUSH_LIST_PRE")
+    '("hook-pad-push-list-post" "GST_TRACER_QUARK_HOOK_PAD_PUSH_LIST_POST")
+    '("hook-pad-pull-range-pre" "GST_TRACER_QUARK_HOOK_PAD_PULL_RANGE_PRE")
+    '("hook-pad-pull-range-post" "GST_TRACER_QUARK_HOOK_PAD_PULL_RANGE_POST")
+    '("hook-pad-push-event-pre" "GST_TRACER_QUARK_HOOK_PAD_PUSH_EVENT_PRE")
+    '("hook-pad-push-event-post" "GST_TRACER_QUARK_HOOK_PAD_PUSH_EVENT_POST")
+    '("hook-pad-query-pre" "GST_TRACER_QUARK_HOOK_PAD_QUERY_PRE")
+    '("hook-pad-query-post" "GST_TRACER_QUARK_HOOK_PAD_QUERY_POST")
+    '("hook-element-post-message-pre" "GST_TRACER_QUARK_HOOK_ELEMENT_POST_MESSAGE_PRE")
+    '("hook-element-post-message-post" "GST_TRACER_QUARK_HOOK_ELEMENT_POST_MESSAGE_POST")
+    '("hook-element-query-pre" "GST_TRACER_QUARK_HOOK_ELEMENT_QUERY_PRE")
+    '("hook-element-query-post" "GST_TRACER_QUARK_HOOK_ELEMENT_QUERY_POST")
+    '("hook-element-new" "GST_TRACER_QUARK_HOOK_ELEMENT_NEW")
+    '("hook-element-add-pad" "GST_TRACER_QUARK_HOOK_ELEMENT_ADD_PAD")
+    '("hook-element-remove-pad" "GST_TRACER_QUARK_HOOK_ELEMENT_REMOVE_PAD")
+    '("hook-bin-add-pre" "GST_TRACER_QUARK_HOOK_BIN_ADD_PRE")
+    '("hook-bin-add-post" "GST_TRACER_QUARK_HOOK_BIN_ADD_POST")
+    '("hook-bin-remove-pre" "GST_TRACER_QUARK_HOOK_BIN_REMOVE_PRE")
+    '("hook-bin-remove-post" "GST_TRACER_QUARK_HOOK_BIN_REMOVE_POST")
+    '("hook-pad-link-pre" "GST_TRACER_QUARK_HOOK_PAD_LINK_PRE")
+    '("hook-pad-link-post" "GST_TRACER_QUARK_HOOK_PAD_LINK_POST")
+    '("hook-pad-unlink-pre" "GST_TRACER_QUARK_HOOK_PAD_UNLINK_PRE")
+    '("hook-pad-unlink-post" "GST_TRACER_QUARK_HOOK_PAD_UNLINK_POST")
+    '("hook-element-change-state-pre" "GST_TRACER_QUARK_HOOK_ELEMENT_CHANGE_STATE_PRE")
+    '("hook-element-change-state-post" "GST_TRACER_QUARK_HOOK_ELEMENT_CHANGE_STATE_POST")
+    '("max" "GST_TRACER_QUARK_MAX")
+  )
+)
+
 (define-enum TypeFindProbability
   (in-module "Gst")
   (c-name "GstTypeFindProbability")
@@ -1591,6 +1666,7 @@
     '("none" "GST_INTERPOLATION_MODE_NONE")
     '("linear" "GST_INTERPOLATION_MODE_LINEAR")
     '("cubic" "GST_INTERPOLATION_MODE_CUBIC")
+    '("cubic-monotonic" "GST_INTERPOLATION_MODE_CUBIC_MONOTONIC")
   )
 )
 
@@ -3718,6 +3794,19 @@
   )
 )
 
+(define-method unadjust_with_calibration
+  (of-object "GstClock")
+  (c-name "gst_clock_unadjust_with_calibration")
+  (return-type "GstClockTime")
+  (parameters
+    '("GstClockTime" "external_target")
+    '("GstClockTime" "cinternal")
+    '("GstClockTime" "cexternal")
+    '("GstClockTime" "cnum")
+    '("GstClockTime" "cdenom")
+  )
+)
+
 (define-method unadjust_unlocked
   (of-object "GstClock")
   (c-name "gst_clock_unadjust_unlocked")
@@ -4799,6 +4888,15 @@
   )
 )
 
+(define-method add_static_pad_template
+  (of-object "GstElementClass")
+  (c-name "gst_element_class_add_static_pad_template")
+  (return-type "none")
+  (parameters
+    '("GstStaticPadTemplate*" "static_templ")
+  )
+)
+
 (define-method get_pad_template
   (of-object "GstElementClass")
   (c-name "gst_element_class_get_pad_template")
@@ -4947,6 +5045,30 @@
   )
 )
 
+(define-method get_contexts
+  (of-object "GstElement")
+  (c-name "gst_element_get_contexts")
+  (return-type "GList*")
+)
+
+(define-method get_context
+  (of-object "GstElement")
+  (c-name "gst_element_get_context")
+  (return-type "GstContext*")
+  (parameters
+    '("const-gchar*" "context_type")
+  )
+)
+
+(define-method get_context_unlocked
+  (of-object "GstElement")
+  (c-name "gst_element_get_context_unlocked")
+  (return-type "GstContext*")
+  (parameters
+    '("const-gchar*" "context_type")
+  )
+)
+
 (define-method add_pad
   (of-object "GstElement")
   (c-name "gst_element_add_pad")
@@ -5525,6 +5647,16 @@
   (return-type "GType")
 )
 
+(define-function gst_tracer_value_scope_get_type
+  (c-name "gst_tracer_value_scope_get_type")
+  (return-type "GType")
+)
+
+(define-function gst_tracer_value_flags_get_type
+  (c-name "gst_tracer_value_flags_get_type")
+  (return-type "GType")
+)
+
 (define-function gst_type_find_probability_get_type
   (c-name "gst_type_find_probability_get_type")
   (return-type "GType")
@@ -6629,6 +6761,34 @@
   )
 )
 
+(define-function gst_info_vasprintf
+  (c-name "gst_info_vasprintf")
+  (return-type "gint")
+  (parameters
+    '("gchar**" "result")
+    '("const-gchar*" "format")
+    '("va_list" "args")
+  )
+)
+
+(define-function gst_info_strdup_vprintf
+  (c-name "gst_info_strdup_vprintf")
+  (return-type "gchar*")
+  (parameters
+    '("const-gchar*" "format")
+    '("va_list" "args")
+  )
+)
+
+(define-function gst_info_strdup_printf
+  (c-name "gst_info_strdup_printf")
+  (return-type "gchar*")
+  (parameters
+    '("const-gchar*" "format")
+  )
+  (varargs #t)
+)
+
 (define-function GST_CAT_LEVEL_LOG_valist
   (c-name "GST_CAT_LEVEL_LOG_valist")
   (return-type "none")
@@ -8684,6 +8844,17 @@
   )
 )
 
+(define-method set_event_full_function_full
+  (of-object "GstPad")
+  (c-name "gst_pad_set_event_full_function_full")
+  (return-type "none")
+  (parameters
+    '("GstPadEventFullFunction" "event")
+    '("gpointer" "user_data")
+    '("GDestroyNotify" "notify")
+  )
+)
+
 (define-method set_link_function_full
   (of-object "GstPad")
   (c-name "gst_pad_set_link_function_full")
@@ -10928,6 +11099,17 @@
   )
 )
 
+(define-method to_stream_time_full
+  (of-object "GstSegment")
+  (c-name "gst_segment_to_stream_time_full")
+  (return-type "gint")
+  (parameters
+    '("GstFormat" "format")
+    '("guint64" "position")
+    '("guint64*" "stream_time")
+  )
+)
+
 (define-method to_stream_time
   (of-object "GstSegment")
   (c-name "gst_segment_to_stream_time")
@@ -10938,6 +11120,27 @@
   )
 )
 
+(define-method position_from_stream_time_full
+  (of-object "GstSegment")
+  (c-name "gst_segment_position_from_stream_time_full")
+  (return-type "gint")
+  (parameters
+    '("GstFormat" "format")
+    '("guint64" "stream_time")
+    '("guint64*" "position")
+  )
+)
+
+(define-method position_from_stream_time
+  (of-object "GstSegment")
+  (c-name "gst_segment_position_from_stream_time")
+  (return-type "guint64")
+  (parameters
+    '("GstFormat" "format")
+    '("guint64" "stream_time")
+  )
+)
+
 (define-method to_running_time
   (of-object "GstSegment")
   (c-name "gst_segment_to_running_time")
@@ -10969,6 +11172,27 @@
   )
 )
 
+(define-method position_from_running_time_full
+  (of-object "GstSegment")
+  (c-name "gst_segment_position_from_running_time_full")
+  (return-type "gint")
+  (parameters
+    '("GstFormat" "format")
+    '("guint64" "running_time")
+    '("guint64*" "position")
+  )
+)
+
+(define-method position_from_running_time
+  (of-object "GstSegment")
+  (c-name "gst_segment_position_from_running_time")
+  (return-type "guint64")
+  (parameters
+    '("GstFormat" "format")
+    '("guint64" "running_time")
+  )
+)
+
 (define-method set_running_time
   (of-object "GstSegment")
   (c-name "gst_segment_set_running_time")
@@ -12778,6 +13002,71 @@
 
 
 
+;; From gsttracerfactory.h
+
+(define-function gst_tracer_factory_get_type
+  (c-name "gst_tracer_factory_get_type")
+  (return-type "GType")
+)
+
+(define-function gst_tracer_factory_get_list
+  (c-name "gst_tracer_factory_get_list")
+  (return-type "GList*")
+)
+
+
+
+;; From gsttracer.h
+
+(define-function gst_tracer_get_type
+  (c-name "gst_tracer_get_type")
+  (return-type "GType")
+)
+
+(define-function gst_tracing_register_hook
+  (c-name "gst_tracing_register_hook")
+  (return-type "none")
+  (parameters
+    '("GstTracer*" "tracer")
+    '("const-gchar*" "detail")
+    '("GCallback" "func")
+  )
+)
+
+(define-function gst_tracer_register
+  (c-name "gst_tracer_register")
+  (return-type "gboolean")
+  (parameters
+    '("GstPlugin*" "plugin")
+    '("const-gchar*" "name")
+    '("GType" "type")
+  )
+)
+
+
+
+;; From gsttracerrecord.h
+
+(define-function gst_tracer_record_get_type
+  (c-name "gst_tracer_record_get_type")
+  (return-type "GType")
+)
+
+(define-method log
+  (of-object "GstTracerRecord")
+  (c-name "gst_tracer_record_log")
+  (return-type "none")
+  (parameters
+  )
+  (varargs #t)
+)
+
+
+
+;; From gsttracerutils.h
+
+
+
 ;; From gsttypefindfactory.h
 
 (define-function gst_type_find_factory_get_type
@@ -18582,6 +18871,24 @@
 
 ;; From gstharness.h
 
+(define-function gst_harness_new_empty
+  (c-name "gst_harness_new_empty")
+  (return-type "GstHarness*")
+)
+
+(define-method add_element_full
+  (of-object "GstHarness")
+  (c-name "gst_harness_add_element_full")
+  (return-type "none")
+  (parameters
+    '("GstElement*" "element")
+    '("GstStaticPadTemplate*" "hsrc")
+    '("const-gchar*" "element_sinkpad_name")
+    '("GstStaticPadTemplate*" "hsink")
+    '("const-gchar*" "element_srcpad_name")
+  )
+)
+
 (define-function gst_harness_new_full
   (c-name "gst_harness_new_full")
   (return-type "GstHarness*")
@@ -18641,6 +18948,15 @@
   )
 )
 
+(define-method add_parse
+  (of-object "GstHarness")
+  (c-name "gst_harness_add_parse")
+  (return-type "none")
+  (parameters
+    '("const-gchar*" "launchline")
+  )
+)
+
 (define-method teardown
   (of-object "GstHarness")
   (c-name "gst_harness_teardown")
@@ -19174,6 +19490,18 @@
   )
 )
 
+(define-method stress_push_event_with_cb_start_full
+  (of-object "GstHarness")
+  (c-name "gst_harness_stress_push_event_with_cb_start_full")
+  (return-type "GstHarnessThread*")
+  (parameters
+    '("GstHarnessPrepareEventFunc" "func")
+    '("gpointer" "data")
+    '("GDestroyNotify" "notify")
+    '("gulong" "sleep")
+  )
+)
+
 (define-method stress_push_upstream_event_start_full
   (of-object "GstHarness")
   (c-name "gst_harness_stress_push_upstream_event_start_full")
@@ -19184,6 +19512,18 @@
   )
 )
 
+(define-method stress_push_upstream_event_with_cb_start_full
+  (of-object "GstHarness")
+  (c-name "gst_harness_stress_push_upstream_event_with_cb_start_full")
+  (return-type "GstHarnessThread*")
+  (parameters
+    '("GstHarnessPrepareEventFunc" "func")
+    '("gpointer" "data")
+    '("GDestroyNotify" "notify")
+    '("gulong" "sleep")
+  )
+)
+
 (define-method stress_property_start_full
   (of-object "GstHarness")
   (c-name "gst_harness_stress_property_start_full")
@@ -19330,6 +19670,12 @@
   )
 )
 
+(define-method crank
+  (of-object "GstTestClock")
+  (c-name "gst_test_clock_crank")
+  (return-type "gboolean")
+)
+
 
 
 ;; From internal-check.h
@@ -19546,6 +19892,12 @@
   )
 )
 
+(define-method get_net_address_meta
+  (of-object "GstBuffer")
+  (c-name "gst_buffer_get_net_address_meta")
+  (return-type "GstNetAddressMeta*")
+)
+
 
 
 ;; From gstnetclientclock.h
@@ -19907,6 +20259,13 @@
   (gtype-id "GST_TYPE_AUDIO_SRC")
 )
 
+(define-object AudioVisualizer
+  (in-module "Gst")
+  (parent "GstElement")
+  (c-name "GstAudioVisualizer")
+  (gtype-id "GST_TYPE_AUDIO_VISUALIZER")
+)
+
 (define-object ColorBalanceChannel
   (in-module "Gst")
   (parent "GObject")
@@ -20022,6 +20381,19 @@
   )
 )
 
+(define-flags AudioChannelMixerFlags
+  (in-module "Gst")
+  (c-name "GstAudioChannelMixerFlags")
+  (gtype-id "GST_TYPE_AUDIO_CHANNEL_MIXER_FLAGS")
+  (values
+    '("none" "GST_AUDIO_CHANNEL_MIXER_FLAGS_NONE")
+    '("non-interleaved-in" "GST_AUDIO_CHANNEL_MIXER_FLAGS_NON_INTERLEAVED_IN")
+    '("non-interleaved-out" "GST_AUDIO_CHANNEL_MIXER_FLAGS_NON_INTERLEAVED_OUT")
+    '("unpositioned-in" "GST_AUDIO_CHANNEL_MIXER_FLAGS_UNPOSITIONED_IN")
+    '("unpositioned-out" "GST_AUDIO_CHANNEL_MIXER_FLAGS_UNPOSITIONED_OUT")
+  )
+)
+
 (define-enum AudioChannelPosition
   (in-module "Gst")
   (c-name "GstAudioChannelPosition")
@@ -20061,6 +20433,17 @@
   )
 )
 
+(define-flags AudioConverterFlags
+  (in-module "Gst")
+  (c-name "GstAudioConverterFlags")
+  (gtype-id "GST_TYPE_AUDIO_CONVERTER_FLAGS")
+  (values
+    '("none" "GST_AUDIO_CONVERTER_FLAG_NONE")
+    '("in-writable" "GST_AUDIO_CONVERTER_FLAG_IN_WRITABLE")
+    '("variable-rate" "GST_AUDIO_CONVERTER_FLAG_VARIABLE_RATE")
+  )
+)
+
 (define-enum AudioFormat
   (in-module "Gst")
   (c-name "GstAudioFormat")
@@ -20128,12 +20511,13 @@
   )
 )
 
-(define-enum AudioPackFlags
+(define-flags AudioPackFlags
   (in-module "Gst")
   (c-name "GstAudioPackFlags")
   (gtype-id "GST_TYPE_AUDIO_PACK_FLAGS")
   (values
     '("none" "GST_AUDIO_PACK_FLAG_NONE")
+    '("truncate-range" "GST_AUDIO_PACK_FLAG_TRUNCATE_RANGE")
   )
 )
 
@@ -20157,6 +20541,41 @@
   )
 )
 
+(define-enum AudioDitherMethod
+  (in-module "Gst")
+  (c-name "GstAudioDitherMethod")
+  (gtype-id "GST_TYPE_AUDIO_DITHER_METHOD")
+  (values
+    '("none" "GST_AUDIO_DITHER_NONE")
+    '("rpdf" "GST_AUDIO_DITHER_RPDF")
+    '("tpdf" "GST_AUDIO_DITHER_TPDF")
+    '("tpdf-hf" "GST_AUDIO_DITHER_TPDF_HF")
+  )
+)
+
+(define-enum AudioNoiseShapingMethod
+  (in-module "Gst")
+  (c-name "GstAudioNoiseShapingMethod")
+  (gtype-id "GST_TYPE_AUDIO_NOISE_SHAPING_METHOD")
+  (values
+    '("none" "GST_AUDIO_NOISE_SHAPING_NONE")
+    '("error-feedback" "GST_AUDIO_NOISE_SHAPING_ERROR_FEEDBACK")
+    '("simple" "GST_AUDIO_NOISE_SHAPING_SIMPLE")
+    '("medium" "GST_AUDIO_NOISE_SHAPING_MEDIUM")
+    '("high" "GST_AUDIO_NOISE_SHAPING_HIGH")
+  )
+)
+
+(define-flags AudioQuantizeFlags
+  (in-module "Gst")
+  (c-name "GstAudioQuantizeFlags")
+  (gtype-id "GST_TYPE_AUDIO_QUANTIZE_FLAGS")
+  (values
+    '("none" "GST_AUDIO_QUANTIZE_FLAG_NONE")
+    '("non-interleaved" "GST_AUDIO_QUANTIZE_FLAG_NON_INTERLEAVED")
+  )
+)
+
 (define-enum AudioBaseSinkSlaveMethod
   (in-module "Gst")
   (c-name "GstAudioBaseSinkSlaveMethod")
@@ -20261,6 +20680,24 @@
   )
 )
 
+(define-enum AudioVisualizerShader
+  (in-module "Gst")
+  (c-name "GstAudioVisualizerShader")
+  (gtype-id "GST_TYPE_AUDIO_VISUALIZER_SHADER")
+  (values
+    '("none" "GST_AUDIO_VISUALIZER_SHADER_NONE")
+    '("fade" "GST_AUDIO_VISUALIZER_SHADER_FADE")
+    '("fade-and-move-up" "GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_UP")
+    '("fade-and-move-down" "GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_DOWN")
+    '("fade-and-move-left" "GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_LEFT")
+    '("fade-and-move-right" "GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_RIGHT")
+    '("fade-and-move-horiz-out" "GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_OUT")
+    '("fade-and-move-horiz-in" "GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_IN")
+    '("fade-and-move-vert-out" "GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_OUT")
+    '("fade-and-move-vert-in" "GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_IN")
+  )
+)
+
 (define-enum DiscovererResult
   (in-module "Gst")
   (c-name "GstDiscovererResult")
@@ -20362,6 +20799,16 @@
   )
 )
 
+(define-flags RTPBufferMapFlags
+  (in-module "Gst")
+  (c-name "GstRTPBufferMapFlags")
+  (gtype-id "GST_TYPE_RTP_BUFFER_MAP_FLAGS")
+  (values
+    '("skip-padding" "GST_RTP_BUFFER_MAP_FLAG_SKIP_PADDING")
+    '("last" "GST_RTP_BUFFER_MAP_FLAG_LAST")
+  )
+)
+
 (define-enum RTPProfile
   (in-module "Gst")
   (c-name "GstRTPProfile")
@@ -21151,6 +21598,7 @@
     '("log100" "GST_VIDEO_TRANSFER_LOG100")
     '("log316" "GST_VIDEO_TRANSFER_LOG316")
     '("bt2020-12" "GST_VIDEO_TRANSFER_BT2020_12")
+    '("adobergb" "GST_VIDEO_TRANSFER_ADOBERGB")
   )
 )
 
@@ -21167,6 +21615,7 @@
     '("smpte240m" "GST_VIDEO_COLOR_PRIMARIES_SMPTE240M")
     '("film" "GST_VIDEO_COLOR_PRIMARIES_FILM")
     '("bt2020" "GST_VIDEO_COLOR_PRIMARIES_BT2020")
+    '("adobergb" "GST_VIDEO_COLOR_PRIMARIES_ADOBERGB")
   )
 )
 
@@ -21704,6 +22153,21 @@
   (return-type "gboolean")
 )
 
+(define-method set_wait_on_eos
+  (of-object "GstAppSink")
+  (c-name "gst_app_sink_set_wait_on_eos")
+  (return-type "none")
+  (parameters
+    '("gboolean" "wait")
+  )
+)
+
+(define-method get_wait_on_eos
+  (of-object "GstAppSink")
+  (c-name "gst_app_sink_get_wait_on_eos")
+  (return-type "gboolean")
+)
+
 (define-method pull_preroll
   (of-object "GstAppSink")
   (c-name "gst_app_sink_pull_preroll")
@@ -21879,6 +22343,47 @@
 
 
 
+;; From audio-channel-mixer.h
+
+(define-function gst_audio_channel_mixer_new
+  (c-name "gst_audio_channel_mixer_new")
+  (is-constructor-of "GstAudioChannelMixer")
+  (return-type "GstAudioChannelMixer*")
+  (parameters
+    '("GstAudioChannelMixerFlags" "flags")
+    '("GstAudioFormat" "format")
+    '("gint" "in_channels")
+    '("GstAudioChannelPosition*" "in_position")
+    '("gint" "out_channels")
+    '("GstAudioChannelPosition*" "out_position")
+  )
+)
+
+(define-method free
+  (of-object "GstAudioChannelMixer")
+  (c-name "gst_audio_channel_mixer_free")
+  (return-type "none")
+)
+
+(define-method is_passthrough
+  (of-object "GstAudioChannelMixer")
+  (c-name "gst_audio_channel_mixer_is_passthrough")
+  (return-type "gboolean")
+)
+
+(define-method samples
+  (of-object "GstAudioChannelMixer")
+  (c-name "gst_audio_channel_mixer_samples")
+  (return-type "none")
+  (parameters
+    '("const-gpointer[]" "in")
+    '("gpointer[]" "out")
+    '("gint" "samples")
+  )
+)
+
+
+
 ;; From audio-channels.h
 
 (define-function gst_audio_buffer_reorder_channels
@@ -21957,6 +22462,100 @@
   )
 )
 
+(define-function gst_audio_channel_get_fallback_mask
+  (c-name "gst_audio_channel_get_fallback_mask")
+  (return-type "guint64")
+  (parameters
+    '("gint" "channels")
+  )
+)
+
+
+
+;; From audio-converter.h
+
+(define-function gst_audio_converter_new
+  (c-name "gst_audio_converter_new")
+  (is-constructor-of "GstAudioConverter")
+  (return-type "GstAudioConverter*")
+  (parameters
+    '("GstAudioConverterFlags" "flags")
+    '("GstAudioInfo*" "in_info")
+    '("GstAudioInfo*" "out_info")
+    '("GstStructure*" "config")
+  )
+)
+
+(define-method free
+  (of-object "GstAudioConverter")
+  (c-name "gst_audio_converter_free")
+  (return-type "none")
+)
+
+(define-method reset
+  (of-object "GstAudioConverter")
+  (c-name "gst_audio_converter_reset")
+  (return-type "none")
+)
+
+(define-method update_config
+  (of-object "GstAudioConverter")
+  (c-name "gst_audio_converter_update_config")
+  (return-type "gboolean")
+  (parameters
+    '("gint" "in_rate")
+    '("gint" "out_rate")
+    '("GstStructure*" "config")
+  )
+)
+
+(define-method get_config
+  (of-object "GstAudioConverter")
+  (c-name "gst_audio_converter_get_config")
+  (return-type "const-GstStructure*")
+  (parameters
+    '("gint*" "in_rate")
+    '("gint*" "out_rate")
+  )
+)
+
+(define-method get_out_frames
+  (of-object "GstAudioConverter")
+  (c-name "gst_audio_converter_get_out_frames")
+  (return-type "gsize")
+  (parameters
+    '("gsize" "in_frames")
+  )
+)
+
+(define-method get_in_frames
+  (of-object "GstAudioConverter")
+  (c-name "gst_audio_converter_get_in_frames")
+  (return-type "gsize")
+  (parameters
+    '("gsize" "out_frames")
+  )
+)
+
+(define-method get_max_latency
+  (of-object "GstAudioConverter")
+  (c-name "gst_audio_converter_get_max_latency")
+  (return-type "gsize")
+)
+
+(define-method samples
+  (of-object "GstAudioConverter")
+  (c-name "gst_audio_converter_samples")
+  (return-type "gboolean")
+  (parameters
+    '("GstAudioConverterFlags" "flags")
+    '("gpointer[]" "in")
+    '("gsize" "in_frames")
+    '("gpointer[]" "out")
+    '("gsize" "out_frames")
+  )
+)
+
 
 
 ;; From audio-enumtypes.h
@@ -21981,6 +22580,16 @@
   (return-type "GType")
 )
 
+(define-function gst_audio_channel_mixer_flags_get_type
+  (c-name "gst_audio_channel_mixer_flags_get_type")
+  (return-type "GType")
+)
+
+(define-function gst_audio_converter_flags_get_type
+  (c-name "gst_audio_converter_flags_get_type")
+  (return-type "GType")
+)
+
 (define-function gst_audio_flags_get_type
   (c-name "gst_audio_flags_get_type")
   (return-type "GType")
@@ -21991,6 +22600,21 @@
   (return-type "GType")
 )
 
+(define-function gst_audio_dither_method_get_type
+  (c-name "gst_audio_dither_method_get_type")
+  (return-type "GType")
+)
+
+(define-function gst_audio_noise_shaping_method_get_type
+  (c-name "gst_audio_noise_shaping_method_get_type")
+  (return-type "GType")
+)
+
+(define-function gst_audio_quantize_flags_get_type
+  (c-name "gst_audio_quantize_flags_get_type")
+  (return-type "GType")
+)
+
 (define-function gst_audio_ring_buffer_state_get_type
   (c-name "gst_audio_ring_buffer_state_get_type")
   (return-type "GType")
@@ -22149,6 +22773,47 @@
 
 
 
+;; From audio-quantize.h
+
+(define-function gst_audio_quantize_new
+  (c-name "gst_audio_quantize_new")
+  (is-constructor-of "GstAudioQuantize")
+  (return-type "GstAudioQuantize*")
+  (parameters
+    '("GstAudioDitherMethod" "dither")
+    '("GstAudioNoiseShapingMethod" "ns")
+    '("GstAudioQuantizeFlags" "flags")
+    '("GstAudioFormat" "format")
+    '("guint" "channels")
+    '("guint" "quantizer")
+  )
+)
+
+(define-method free
+  (of-object "GstAudioQuantize")
+  (c-name "gst_audio_quantize_free")
+  (return-type "none")
+)
+
+(define-method reset
+  (of-object "GstAudioQuantize")
+  (c-name "gst_audio_quantize_reset")
+  (return-type "none")
+)
+
+(define-method samples
+  (of-object "GstAudioQuantize")
+  (c-name "gst_audio_quantize_samples")
+  (return-type "none")
+  (parameters
+    '("const-gpointer[]" "in")
+    '("gpointer[]" "out")
+    '("guint" "samples")
+  )
+)
+
+
+
 ;; From gstaudiobasesink.h
 
 (define-function gst_audio_base_sink_get_type
@@ -22969,6 +23634,27 @@
   )
 )
 
+(define-function gst_audio_clipping_meta_api_get_type
+  (c-name "gst_audio_clipping_meta_api_get_type")
+  (return-type "GType")
+)
+
+(define-function gst_audio_clipping_meta_get_info
+  (c-name "gst_audio_clipping_meta_get_info")
+  (return-type "const-GstMetaInfo*")
+)
+
+(define-method add_audio_clipping_meta
+  (of-object "GstBuffer")
+  (c-name "gst_buffer_add_audio_clipping_meta")
+  (return-type "GstAudioClippingMeta*")
+  (parameters
+    '("GstFormat" "format")
+    '("guint64" "start")
+    '("guint64" "end")
+  )
+)
+
 
 
 ;; From gstaudiopack-dist.h
@@ -22983,6 +23669,16 @@
   )
 )
 
+(define-function audio_orc_unpack_u8_trunc
+  (c-name "audio_orc_unpack_u8_trunc")
+  (return-type "none")
+  (parameters
+    '("gint32*-ORC_RESTRICT" "d1")
+    '("const-guint8*-ORC_RESTRICT" "s1")
+    '("int" "n")
+  )
+)
+
 (define-function audio_orc_unpack_s8
   (c-name "audio_orc_unpack_s8")
   (return-type "none")
@@ -22993,6 +23689,16 @@
   )
 )
 
+(define-function audio_orc_unpack_s8_trunc
+  (c-name "audio_orc_unpack_s8_trunc")
+  (return-type "none")
+  (parameters
+    '("gint32*-ORC_RESTRICT" "d1")
+    '("const-guint8*-ORC_RESTRICT" "s1")
+    '("int" "n")
+  )
+)
+
 (define-function audio_orc_unpack_u16
   (c-name "audio_orc_unpack_u16")
   (return-type "none")
@@ -23003,6 +23709,16 @@
   )
 )
 
+(define-function audio_orc_unpack_u16_trunc
+  (c-name "audio_orc_unpack_u16_trunc")
+  (return-type "none")
+  (parameters
+    '("gint32*-ORC_RESTRICT" "d1")
+    '("const-guint8*-ORC_RESTRICT" "s1")
+    '("int" "n")
+  )
+)
+
 (define-function audio_orc_unpack_s16
   (c-name "audio_orc_unpack_s16")
   (return-type "none")
@@ -23013,6 +23729,16 @@
   )
 )
 
+(define-function audio_orc_unpack_s16_trunc
+  (c-name "audio_orc_unpack_s16_trunc")
+  (return-type "none")
+  (parameters
+    '("gint32*-ORC_RESTRICT" "d1")
+    '("const-guint8*-ORC_RESTRICT" "s1")
+    '("int" "n")
+  )
+)
+
 (define-function audio_orc_unpack_u16_swap
   (c-name "audio_orc_unpack_u16_swap")
   (return-type "none")
@@ -23023,6 +23749,16 @@
   )
 )
 
+(define-function audio_orc_unpack_u16_swap_trunc
+  (c-name "audio_orc_unpack_u16_swap_trunc")
+  (return-type "none")
+  (parameters
+    '("gint32*-ORC_RESTRICT" "d1")
+    '("const-guint8*-ORC_RESTRICT" "s1")
+    '("int" "n")
+  )
+)
+
 (define-function audio_orc_unpack_s16_swap
   (c-name "audio_orc_unpack_s16_swap")
   (return-type "none")
@@ -23033,6 +23769,16 @@
   )
 )
 
+(define-function audio_orc_unpack_s16_swap_trunc
+  (c-name "audio_orc_unpack_s16_swap_trunc")
+  (return-type "none")
+  (parameters
+    '("gint32*-ORC_RESTRICT" "d1")
+    '("const-guint8*-ORC_RESTRICT" "s1")
+    '("int" "n")
+  )
+)
+
 (define-function audio_orc_unpack_u24_32
   (c-name "audio_orc_unpack_u24_32")
   (return-type "none")
@@ -23363,6 +24109,59 @@
   )
 )
 
+(define-function audio_orc_int_bias
+  (c-name "audio_orc_int_bias")
+  (return-type "none")
+  (parameters
+    '("gint32*-ORC_RESTRICT" "d1")
+    '("const-gint32*-ORC_RESTRICT" "s1")
+    '("int" "p1")
+    '("int" "p2")
+    '("int" "n")
+  )
+)
+
+(define-function audio_orc_int_dither
+  (c-name "audio_orc_int_dither")
+  (return-type "none")
+  (parameters
+    '("gint32*-ORC_RESTRICT" "d1")
+    '("const-gint32*-ORC_RESTRICT" "s1")
+    '("const-gint32*-ORC_RESTRICT" "s2")
+    '("int" "p1")
+    '("int" "n")
+  )
+)
+
+(define-function audio_orc_update_rand
+  (c-name "audio_orc_update_rand")
+  (return-type "none")
+  (parameters
+    '("guint32*-ORC_RESTRICT" "d1")
+    '("int" "n")
+  )
+)
+
+(define-function audio_orc_s32_to_double
+  (c-name "audio_orc_s32_to_double")
+  (return-type "none")
+  (parameters
+    '("gdouble*-ORC_RESTRICT" "d1")
+    '("const-gint32*-ORC_RESTRICT" "s1")
+    '("int" "n")
+  )
+)
+
+(define-function audio_orc_double_to_s32
+  (c-name "audio_orc_double_to_s32")
+  (return-type "none")
+  (parameters
+    '("gint32*-ORC_RESTRICT" "d1")
+    '("const-gdouble*-ORC_RESTRICT" "s1")
+    '("int" "n")
+  )
+)
+
 
 
 ;; From gstaudiopack.h
@@ -23377,6 +24176,16 @@
   )
 )
 
+(define-function audio_orc_unpack_u8_trunc
+  (c-name "audio_orc_unpack_u8_trunc")
+  (return-type "none")
+  (parameters
+    '("gint32*-ORC_RESTRICT" "d1")
+    '("const-guint8*-ORC_RESTRICT" "s1")
+    '("int" "n")
+  )
+)
+
 (define-function audio_orc_unpack_s8
   (c-name "audio_orc_unpack_s8")
   (return-type "none")
@@ -23387,6 +24196,16 @@
   )
 )
 
+(define-function audio_orc_unpack_s8_trunc
+  (c-name "audio_orc_unpack_s8_trunc")
+  (return-type "none")
+  (parameters
+    '("gint32*-ORC_RESTRICT" "d1")
+    '("const-guint8*-ORC_RESTRICT" "s1")
+    '("int" "n")
+  )
+)
+
 (define-function audio_orc_unpack_u16
   (c-name "audio_orc_unpack_u16")
   (return-type "none")
@@ -23397,6 +24216,16 @@
   )
 )
 
+(define-function audio_orc_unpack_u16_trunc
+  (c-name "audio_orc_unpack_u16_trunc")
+  (return-type "none")
+  (parameters
+    '("gint32*-ORC_RESTRICT" "d1")
+    '("const-guint8*-ORC_RESTRICT" "s1")
+    '("int" "n")
+  )
+)
+
 (define-function audio_orc_unpack_s16
   (c-name "audio_orc_unpack_s16")
   (return-type "none")
@@ -23407,6 +24236,16 @@
   )
 )
 
+(define-function audio_orc_unpack_s16_trunc
+  (c-name "audio_orc_unpack_s16_trunc")
+  (return-type "none")
+  (parameters
+    '("gint32*-ORC_RESTRICT" "d1")
+    '("const-guint8*-ORC_RESTRICT" "s1")
+    '("int" "n")
+  )
+)
+
 (define-function audio_orc_unpack_u16_swap
   (c-name "audio_orc_unpack_u16_swap")
   (return-type "none")
@@ -23417,6 +24256,16 @@
   )
 )
 
+(define-function audio_orc_unpack_u16_swap_trunc
+  (c-name "audio_orc_unpack_u16_swap_trunc")
+  (return-type "none")
+  (parameters
+    '("gint32*-ORC_RESTRICT" "d1")
+    '("const-guint8*-ORC_RESTRICT" "s1")
+    '("int" "n")
+  )
+)
+
 (define-function audio_orc_unpack_s16_swap
   (c-name "audio_orc_unpack_s16_swap")
   (return-type "none")
@@ -23427,6 +24276,16 @@
   )
 )
 
+(define-function audio_orc_unpack_s16_swap_trunc
+  (c-name "audio_orc_unpack_s16_swap_trunc")
+  (return-type "none")
+  (parameters
+    '("gint32*-ORC_RESTRICT" "d1")
+    '("const-guint8*-ORC_RESTRICT" "s1")
+    '("int" "n")
+  )
+)
+
 (define-function audio_orc_unpack_u24_32
   (c-name "audio_orc_unpack_u24_32")
   (return-type "none")
@@ -23757,6 +24616,59 @@
   )
 )
 
+(define-function audio_orc_int_bias
+  (c-name "audio_orc_int_bias")
+  (return-type "none")
+  (parameters
+    '("gint32*-ORC_RESTRICT" "d1")
+    '("const-gint32*-ORC_RESTRICT" "s1")
+    '("int" "p1")
+    '("int" "p2")
+    '("int" "n")
+  )
+)
+
+(define-function audio_orc_int_dither
+  (c-name "audio_orc_int_dither")
+  (return-type "none")
+  (parameters
+    '("gint32*-ORC_RESTRICT" "d1")
+    '("const-gint32*-ORC_RESTRICT" "s1")
+    '("const-gint32*-ORC_RESTRICT" "s2")
+    '("int" "p1")
+    '("int" "n")
+  )
+)
+
+(define-function audio_orc_update_rand
+  (c-name "audio_orc_update_rand")
+  (return-type "none")
+  (parameters
+    '("guint32*-ORC_RESTRICT" "d1")
+    '("int" "n")
+  )
+)
+
+(define-function audio_orc_s32_to_double
+  (c-name "audio_orc_s32_to_double")
+  (return-type "none")
+  (parameters
+    '("gdouble*-ORC_RESTRICT" "d1")
+    '("const-gint32*-ORC_RESTRICT" "s1")
+    '("int" "n")
+  )
+)
+
+(define-function audio_orc_double_to_s32
+  (c-name "audio_orc_double_to_s32")
+  (return-type "none")
+  (parameters
+    '("gint32*-ORC_RESTRICT" "d1")
+    '("const-gdouble*-ORC_RESTRICT" "s1")
+    '("int" "n")
+  )
+)
+
 
 
 ;; From gstaudioringbuffer.h
@@ -24809,6 +25721,73 @@
   )
 )
 
+(define-function gst_codec_utils_opus_parse_caps
+  (c-name "gst_codec_utils_opus_parse_caps")
+  (return-type "gboolean")
+  (parameters
+    '("GstCaps*" "caps")
+    '("guint32*" "rate")
+    '("guint8*" "channels")
+    '("guint8*" "channel_mapping_family")
+    '("guint8*" "stream_count")
+    '("guint8*" "coupled_count")
+    '("guint8" "channel_mapping[256]")
+  )
+)
+
+(define-function gst_codec_utils_opus_create_caps
+  (c-name "gst_codec_utils_opus_create_caps")
+  (return-type "GstCaps*")
+  (parameters
+    '("guint32" "rate")
+    '("guint8" "channels")
+    '("guint8" "channel_mapping_family")
+    '("guint8" "stream_count")
+    '("guint8" "coupled_count")
+    '("const-guint8*" "channel_mapping")
+  )
+)
+
+(define-function gst_codec_utils_opus_create_caps_from_header
+  (c-name "gst_codec_utils_opus_create_caps_from_header")
+  (return-type "GstCaps*")
+  (parameters
+    '("GstBuffer*" "header")
+    '("GstBuffer*" "comments")
+  )
+)
+
+(define-function gst_codec_utils_opus_create_header
+  (c-name "gst_codec_utils_opus_create_header")
+  (return-type "GstBuffer*")
+  (parameters
+    '("guint32" "rate")
+    '("guint8" "channels")
+    '("guint8" "channel_mapping_family")
+    '("guint8" "stream_count")
+    '("guint8" "coupled_count")
+    '("const-guint8*" "channel_mapping")
+    '("guint16" "pre_skip")
+    '("gint16" "output_gain")
+  )
+)
+
+(define-function gst_codec_utils_opus_parse_header
+  (c-name "gst_codec_utils_opus_parse_header")
+  (return-type "gboolean")
+  (parameters
+    '("GstBuffer*" "header")
+    '("guint32*" "rate")
+    '("guint8*" "channels")
+    '("guint8*" "channel_mapping_family")
+    '("guint8*" "stream_count")
+    '("guint8*" "coupled_count")
+    '("guint8" "channel_mapping[256]")
+    '("guint16*" "pre_skip")
+    '("gint16*" "output_gain")
+  )
+)
+
 
 
 ;; From descriptions.h
@@ -25281,6 +26260,15 @@
 
 
 
+;; From gstaudiovisualizer.h
+
+(define-function gst_audio_visualizer_get_type
+  (c-name "gst_audio_visualizer_get_type")
+  (return-type "GType")
+)
+
+
+
 ;; From gstdiscoverer.h
 
 (define-function gst_discoverer_stream_info_get_type
@@ -25900,6 +26888,11 @@
   (return-type "GType")
 )
 
+(define-function gst_audio_visualizer_shader_get_type
+  (c-name "gst_audio_visualizer_shader_get_type")
+  (return-type "GType")
+)
+
 
 
 ;; From pbutils.h
@@ -27134,6 +28127,11 @@
   (return-type "GType")
 )
 
+(define-function gst_rtp_buffer_map_flags_get_type
+  (c-name "gst_rtp_buffer_map_flags_get_type")
+  (return-type "GType")
+)
+
 (define-function gst_rtcp_type_get_type
   (c-name "gst_rtcp_type_get_type")
   (return-type "GType")
@@ -27267,6 +28265,16 @@
   )
 )
 
+(define-method connect_with_response
+  (of-object "GstRTSPConnection")
+  (c-name "gst_rtsp_connection_connect_with_response")
+  (return-type "GstRTSPResult")
+  (parameters
+    '("GTimeVal*" "timeout")
+    '("GstRTSPMessage*" "response")
+  )
+)
+
 (define-method close
   (of-object "GstRTSPConnection")
   (c-name "gst_rtsp_connection_close")
@@ -28584,6 +29592,20 @@
   )
 )
 
+(define-function gst_mikey_message_new_from_caps
+  (c-name "gst_mikey_message_new_from_caps")
+  (return-type "GstMIKEYMessage*")
+  (parameters
+    '("GstCaps*" "caps")
+  )
+)
+
+(define-method base64_encode
+  (of-object "GstMIKEYMessage")
+  (c-name "gst_mikey_message_base64_encode")
+  (return-type "gchar*")
+)
+
 (define-method ref
   (of-object "GstMIKEYMessage")
   (c-name "gst_mikey_message_ref")
@@ -29804,6 +30826,51 @@
   )
 )
 
+(define-method get_caps_from_media
+  (of-object "GstSDPMedia")
+  (c-name "gst_sdp_media_get_caps_from_media")
+  (return-type "GstCaps*")
+  (parameters
+    '("gint" "pt")
+  )
+)
+
+(define-function gst_sdp_media_set_media_from_caps
+  (c-name "gst_sdp_media_set_media_from_caps")
+  (return-type "GstSDPResult")
+  (parameters
+    '("const-GstCaps*" "caps")
+    '("GstSDPMedia*" "media")
+  )
+)
+
+(define-function gst_sdp_make_keymgmt
+  (c-name "gst_sdp_make_keymgmt")
+  (return-type "gchar*")
+  (parameters
+    '("const-gchar*" "uri")
+    '("const-gchar*" "base64")
+  )
+)
+
+(define-method attributes_to_caps
+  (of-object "GstSDPMessage")
+  (c-name "gst_sdp_message_attributes_to_caps")
+  (return-type "GstSDPResult")
+  (parameters
+    '("GstCaps*" "caps")
+  )
+)
+
+(define-method attributes_to_caps
+  (of-object "GstSDPMedia")
+  (c-name "gst_sdp_media_attributes_to_caps")
+  (return-type "GstSDPResult")
+  (parameters
+    '("GstCaps*" "caps")
+  )
+)
+
 
 
 ;; From sdp.h
@@ -30342,6 +31409,35 @@
 
 
 
+;; From gstvideoaffinetransformationmeta.h
+
+(define-function gst_video_affine_transformation_meta_api_get_type
+  (c-name "gst_video_affine_transformation_meta_api_get_type")
+  (return-type "GType")
+)
+
+(define-function gst_video_affine_transformation_meta_get_info
+  (c-name "gst_video_affine_transformation_meta_get_info")
+  (return-type "const-GstMetaInfo*")
+)
+
+(define-method add_video_affine_transformation_meta
+  (of-object "GstBuffer")
+  (c-name "gst_buffer_add_video_affine_transformation_meta")
+  (return-type "GstVideoAffineTransformationMeta*")
+)
+
+(define-method apply_matrix
+  (of-object "GstVideoAffineTransformationMeta")
+  (c-name "gst_video_affine_transformation_meta_apply_matrix")
+  (return-type "none")
+  (parameters
+    '("const-gfloat" "matrix[16]")
+  )
+)
+
+
+
 ;; From gstvideodecoder.h
 
 (define-function gst_video_decoder_get_type
@@ -33944,6 +35040,19 @@
   )
 )
 
+(define-function video_orc_convert_UYVY_GRAY8
+  (c-name "video_orc_convert_UYVY_GRAY8")
+  (return-type "none")
+  (parameters
+    '("guint8*-ORC_RESTRICT" "d1")
+    '("int" "d1_stride")
+    '("const-orc_uint16*-ORC_RESTRICT" "s1")
+    '("int" "s1_stride")
+    '("int" "n")
+    '("int" "m")
+  )
+)
+
 
 
 ;; From video-orc.h
@@ -35726,6 +36835,19 @@
   )
 )
 
+(define-function video_orc_convert_UYVY_GRAY8
+  (c-name "video_orc_convert_UYVY_GRAY8")
+  (return-type "none")
+  (parameters
+    '("guint8*-ORC_RESTRICT" "d1")
+    '("int" "d1_stride")
+    '("const-orc_uint16*-ORC_RESTRICT" "s1")
+    '("int" "s1_stride")
+    '("int" "n")
+    '("int" "m")
+  )
+)
+
 
 
 ;; From videoorientation.h
diff --git a/gstreamer/src/gst_signals.defs b/gstreamer/src/gst_signals.defs
index f4f6b3b..025e07c 100644
--- a/gstreamer/src/gst_signals.defs
+++ b/gstreamer/src/gst_signals.defs
@@ -708,7 +708,7 @@
   (docs "The port to receive the packets from, 0=allocate")
   (readable #t)
   (writable #t)
-  (construct-only #f)
+  (construct-only #t)
 )
 
 (define-property address
@@ -717,7 +717,7 @@
   (docs "The address to bind on, as a dotted quad (x.x.x.x)")
   (readable #t)
   (writable #t)
-  (construct-only #f)
+  (construct-only #t)
 )
 
 (define-property clock
@@ -726,7 +726,7 @@
   (docs "The clock to export over the network")
   (readable #t)
   (writable #t)
-  (construct-only #f)
+  (construct-only #t)
 )
 
 (define-property active
@@ -1348,6 +1348,24 @@
   (construct-only #f)
 )
 
+(define-property use-interleave
+  (of-object "GstMultiQueue")
+  (prop-type "GParamBoolean")
+  (docs "Adjust time limits based on input interleave")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property unlinked-cache-time
+  (of-object "GstMultiQueue")
+  (prop-type "GParamUInt64")
+  (docs "Extra buffering in time for unlinked streams (if 'sync-by-running-time')")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
 
 ;; From GstTypeFindElement
 
@@ -1559,6 +1577,15 @@
   (construct-only #f)
 )
 
+(define-property use-tags-bitrate
+  (of-object "GstQueue2")
+  (prop-type "GParamBoolean")
+  (docs "Use a bitrate from upstream tags to estimate buffer duration if not provided")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
 (define-property use-rate-estimate
   (of-object "GstQueue2")
   (prop-type "GParamBoolean")
@@ -1622,6 +1649,15 @@
   (construct-only #f)
 )
 
+(define-property avg-in-rate
+  (of-object "GstQueue2")
+  (prop-type "GParamInt64")
+  (docs "Average input data rate (bytes/s)")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
+
 
 ;; From GstQueue
 
@@ -1874,6 +1910,15 @@
   (construct-only #f)
 )
 
+(define-property drop-buffer-flags
+  (of-object "GstIdentity")
+  (prop-type "GParamFlags")
+  (docs "Drop buffers with the given flags")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
 (define-property datarate
   (of-object "GstIdentity")
   (prop-type "GParamInt")
@@ -2382,1338 +2427,6 @@
 )
 
 
-;; From GstEncodeBin
-
-(define-signal request-pad
-  (of-object "GstEncodeBin")
-  (return-type "GstPad*")
-  (when "last")
-  (parameters
-    '("GstCaps*" "p0")
-  )
-)
-
-(define-signal request-profile-pad
-  (of-object "GstEncodeBin")
-  (return-type "GstPad*")
-  (when "last")
-  (parameters
-    '("const-gchar*" "p0")
-  )
-)
-
-(define-property profile
-  (of-object "GstEncodeBin")
-  (prop-type "GParamObject")
-  (docs "The GstEncodingProfile to use")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property queue-buffers-max
-  (of-object "GstEncodeBin")
-  (prop-type "GParamUInt")
-  (docs "Max. number of buffers in the queue (0=disable)")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property queue-bytes-max
-  (of-object "GstEncodeBin")
-  (prop-type "GParamUInt")
-  (docs "Max. amount of data in the queue (bytes, 0=disable)")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property queue-time-max
-  (of-object "GstEncodeBin")
-  (prop-type "GParamUInt64")
-  (docs "Max. amount of data in the queue (in ns, 0=disable)")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property audio-jitter-tolerance
-  (of-object "GstEncodeBin")
-  (prop-type "GParamUInt64")
-  (docs "Amount of timestamp jitter/imperfection to allow on audio streams before inserting/dropping samples 
(ns)")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property avoid-reencoding
-  (of-object "GstEncodeBin")
-  (prop-type "GParamBoolean")
-  (docs "Whether to re-encode portions of compatible video streams that lay on segment boundaries")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property flags
-  (of-object "GstEncodeBin")
-  (prop-type "GParamFlags")
-  (docs "Flags to control behaviour")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-
-;; From GstXImageSink
-
-(define-property display
-  (of-object "GstXImageSink")
-  (prop-type "GParamString")
-  (docs "X Display name")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property synchronous
-  (of-object "GstXImageSink")
-  (prop-type "GParamBoolean")
-  (docs "When enabled, runs the X display in synchronous mode. (unrelated to A/V sync, used only for 
debugging)")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property pixel-aspect-ratio
-  (of-object "GstXImageSink")
-  (prop-type "GParamString")
-  (docs "The pixel aspect ratio of the device")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property force-aspect-ratio
-  (of-object "GstXImageSink")
-  (prop-type "GParamBoolean")
-  (docs "When enabled, reverse caps negotiation (scaling) will respect original aspect ratio")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property handle-events
-  (of-object "GstXImageSink")
-  (prop-type "GParamBoolean")
-  (docs "When enabled, XEvents will be selected and handled")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property handle-expose
-  (of-object "GstXImageSink")
-  (prop-type "GParamBoolean")
-  (docs "When enabled, the current frame will always be drawn in response to X Expose events")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property window-width
-  (of-object "GstXImageSink")
-  (prop-type "GParamUInt64")
-  (docs "Width of the window")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property window-height
-  (of-object "GstXImageSink")
-  (prop-type "GParamUInt64")
-  (docs "Height of the window")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-
-;; From GstAudioResample
-
-(define-property quality
-  (of-object "GstAudioResample")
-  (prop-type "GParamInt")
-  (docs "Resample quality with 0 being the lowest and 10 being the best")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property sinc-filter-mode
-  (of-object "GstAudioResample")
-  (prop-type "GParamEnum")
-  (docs "What sinc filter table mode to use")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property sinc-filter-auto-threshold
-  (of-object "GstAudioResample")
-  (prop-type "GParamUInt")
-  (docs "Memory usage threshold to use if sinc filter mode is AUTO, given in bytes")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-
-;; From GstCdParanoiaSrc
-
-(define-signal transport-error
-  (of-object "GstCdParanoiaSrc")
-  (return-type "void")
-  (when "last")
-  (parameters
-    '("gint" "p0")
-  )
-)
-
-(define-signal uncorrected-error
-  (of-object "GstCdParanoiaSrc")
-  (return-type "void")
-  (when "last")
-  (parameters
-    '("gint" "p0")
-  )
-)
-
-(define-property read-speed
-  (of-object "GstCdParanoiaSrc")
-  (prop-type "GParamInt")
-  (docs "Read from device at specified speed (-1 and 0 = full speed)")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property paranoia-mode
-  (of-object "GstCdParanoiaSrc")
-  (prop-type "GParamFlags")
-  (docs "Type of checking to perform")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property search-overlap
-  (of-object "GstCdParanoiaSrc")
-  (prop-type "GParamInt")
-  (docs "Force minimum overlap search during verification to n sectors")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property generic-device
-  (of-object "GstCdParanoiaSrc")
-  (prop-type "GParamString")
-  (docs "Use specified generic scsi device")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property cache-size
-  (of-object "GstCdParanoiaSrc")
-  (prop-type "GParamInt")
-  (docs "Set CD cache size to n sectors (-1 = auto)")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-
-;; From GstVideoScale
-
-(define-property method
-  (of-object "GstVideoScale")
-  (prop-type "GParamEnum")
-  (docs "method")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property add-borders
-  (of-object "GstVideoScale")
-  (prop-type "GParamBoolean")
-  (docs "Add black borders if necessary to keep the display aspect ratio")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property sharpness
-  (of-object "GstVideoScale")
-  (prop-type "GParamDouble")
-  (docs "Sharpness of filter")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property sharpen
-  (of-object "GstVideoScale")
-  (prop-type "GParamDouble")
-  (docs "Sharpening")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property dither
-  (of-object "GstVideoScale")
-  (prop-type "GParamBoolean")
-  (docs "Add dither (only used for Lanczos method)")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property envelope
-  (of-object "GstVideoScale")
-  (prop-type "GParamDouble")
-  (docs "Size of filter envelope")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property gamma-decode
-  (of-object "GstVideoScale")
-  (prop-type "GParamBoolean")
-  (docs "Decode gamma before scaling")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-
-;; From GstVideoRate
-
-(define-property in
-  (of-object "GstVideoRate")
-  (prop-type "GParamUInt64")
-  (docs "Number of input frames")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property out
-  (of-object "GstVideoRate")
-  (prop-type "GParamUInt64")
-  (docs "Number of output frames")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property duplicate
-  (of-object "GstVideoRate")
-  (prop-type "GParamUInt64")
-  (docs "Number of duplicated frames")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property drop
-  (of-object "GstVideoRate")
-  (prop-type "GParamUInt64")
-  (docs "Number of dropped frames")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property silent
-  (of-object "GstVideoRate")
-  (prop-type "GParamBoolean")
-  (docs "Don't emit notify for dropped and duplicated frames")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property new-pref
-  (of-object "GstVideoRate")
-  (prop-type "GParamDouble")
-  (docs "Value indicating how much to prefer new frames (unused)")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property skip-to-first
-  (of-object "GstVideoRate")
-  (prop-type "GParamBoolean")
-  (docs "Don't produce buffers before the first one we receive")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property drop-only
-  (of-object "GstVideoRate")
-  (prop-type "GParamBoolean")
-  (docs "Only drop frames, no duplicates are produced")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property average-period
-  (of-object "GstVideoRate")
-  (prop-type "GParamUInt64")
-  (docs "Period over which to average the framerate (in ns) (0 = disabled)")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property max-rate
-  (of-object "GstVideoRate")
-  (prop-type "GParamInt")
-  (docs "Maximum framerate allowed to pass through (in frames per second, implies drop-only)")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-
-;; From GstAudioTestSrc
-
-(define-property samplesperbuffer
-  (of-object "GstAudioTestSrc")
-  (prop-type "GParamInt")
-  (docs "Number of samples in each outgoing buffer")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property wave
-  (of-object "GstAudioTestSrc")
-  (prop-type "GParamEnum")
-  (docs "Oscillator waveform")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property freq
-  (of-object "GstAudioTestSrc")
-  (prop-type "GParamDouble")
-  (docs "Frequency of test signal")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property volume
-  (of-object "GstAudioTestSrc")
-  (prop-type "GParamDouble")
-  (docs "Volume of test signal")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property is-live
-  (of-object "GstAudioTestSrc")
-  (prop-type "GParamBoolean")
-  (docs "Whether to act as a live source")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property timestamp-offset
-  (of-object "GstAudioTestSrc")
-  (prop-type "GParamInt64")
-  (docs "An offset added to timestamps set on buffers (in ns)")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property can-activate-push
-  (of-object "GstAudioTestSrc")
-  (prop-type "GParamBoolean")
-  (docs "Can activate in push mode")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property can-activate-pull
-  (of-object "GstAudioTestSrc")
-  (prop-type "GParamBoolean")
-  (docs "Can activate in pull mode")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-
-;; From GstVorbisTag
-
-
-;; From GstVorbisParse
-
-
-;; From GstVorbisDec
-
-
-;; From GstVorbisEnc
-
-(define-property max-bitrate
-  (of-object "GstVorbisEnc")
-  (prop-type "GParamInt")
-  (docs "Specify a maximum bitrate (in bps). Useful for streaming applications. (-1 == disabled)")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property bitrate
-  (of-object "GstVorbisEnc")
-  (prop-type "GParamInt")
-  (docs "Attempt to encode at a bitrate averaging this (in bps). This uses the bitrate management engine, 
and is not recommended for most users. Quality is a better alternative. (-1 == disabled)")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property min-bitrate
-  (of-object "GstVorbisEnc")
-  (prop-type "GParamInt")
-  (docs "Specify a minimum bitrate (in bps). Useful for encoding for a fixed-size channel. (-1 == disabled)")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property quality
-  (of-object "GstVorbisEnc")
-  (prop-type "GParamFloat")
-  (docs "Specify quality instead of specifying a particular bitrate.")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property managed
-  (of-object "GstVorbisEnc")
-  (prop-type "GParamBoolean")
-  (docs "Enable bitrate management engine")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property last-message
-  (of-object "GstVorbisEnc")
-  (prop-type "GParamString")
-  (docs "The last status message")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-
-;; From GstAppSink
-
-(define-signal eos
-  (of-object "GstAppSink")
-  (return-type "void")
-  (when "last")
-)
-
-(define-signal new-preroll
-  (of-object "GstAppSink")
-  (return-type "GstFlowReturn")
-  (when "last")
-)
-
-(define-signal new-sample
-  (of-object "GstAppSink")
-  (return-type "GstFlowReturn")
-  (when "last")
-)
-
-(define-signal pull-preroll
-  (of-object "GstAppSink")
-  (return-type "GstSample*")
-  (when "last")
-)
-
-(define-signal pull-sample
-  (of-object "GstAppSink")
-  (return-type "GstSample*")
-  (when "last")
-)
-
-(define-property caps
-  (of-object "GstAppSink")
-  (prop-type "GParamBoxed")
-  (docs "The allowed caps for the sink pad")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property eos
-  (of-object "GstAppSink")
-  (prop-type "GParamBoolean")
-  (docs "Check if the sink is EOS or not started")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property emit-signals
-  (of-object "GstAppSink")
-  (prop-type "GParamBoolean")
-  (docs "Emit new-preroll and new-sample signals")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property max-buffers
-  (of-object "GstAppSink")
-  (prop-type "GParamUInt")
-  (docs "The maximum number of buffers to queue internally (0 = unlimited)")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property drop
-  (of-object "GstAppSink")
-  (prop-type "GParamBoolean")
-  (docs "Drop old buffers when the buffer queue is filled")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-
-;; From GstAppSrc
-
-(define-signal need-data
-  (of-object "GstAppSrc")
-  (return-type "void")
-  (when "last")
-  (parameters
-    '("guint" "p0")
-  )
-)
-
-(define-signal enough-data
-  (of-object "GstAppSrc")
-  (return-type "void")
-  (when "last")
-)
-
-(define-signal seek-data
-  (of-object "GstAppSrc")
-  (return-type "gboolean")
-  (when "last")
-  (parameters
-    '("guint64" "p0")
-  )
-)
-
-(define-signal push-buffer
-  (of-object "GstAppSrc")
-  (return-type "GstFlowReturn")
-  (when "last")
-  (parameters
-    '("GstBuffer*" "p0")
-  )
-)
-
-(define-signal push-sample
-  (of-object "GstAppSrc")
-  (return-type "GstFlowReturn")
-  (when "last")
-  (parameters
-    '("GstSample*" "p0")
-  )
-)
-
-(define-signal end-of-stream
-  (of-object "GstAppSrc")
-  (return-type "GstFlowReturn")
-  (when "last")
-)
-
-(define-property caps
-  (of-object "GstAppSrc")
-  (prop-type "GParamBoxed")
-  (docs "The allowed caps for the src pad")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property size
-  (of-object "GstAppSrc")
-  (prop-type "GParamInt64")
-  (docs "The size of the data stream in bytes (-1 if unknown)")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property stream-type
-  (of-object "GstAppSrc")
-  (prop-type "GParamEnum")
-  (docs "the type of the stream")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property max-bytes
-  (of-object "GstAppSrc")
-  (prop-type "GParamUInt64")
-  (docs "The maximum number of bytes to queue internally (0 = unlimited)")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property format
-  (of-object "GstAppSrc")
-  (prop-type "GParamEnum")
-  (docs "The format of the segment events and seek")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property block
-  (of-object "GstAppSrc")
-  (prop-type "GParamBoolean")
-  (docs "Block push-buffer when max-bytes are queued")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property is-live
-  (of-object "GstAppSrc")
-  (prop-type "GParamBoolean")
-  (docs "Whether to act as a live source")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property min-latency
-  (of-object "GstAppSrc")
-  (prop-type "GParamInt64")
-  (docs "The minimum latency (-1 = default)")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property max-latency
-  (of-object "GstAppSrc")
-  (prop-type "GParamInt64")
-  (docs "The maximum latency (-1 = unlimited)")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property emit-signals
-  (of-object "GstAppSrc")
-  (prop-type "GParamBoolean")
-  (docs "Emit need-data, enough-data and seek-data signals")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property min-percent
-  (of-object "GstAppSrc")
-  (prop-type "GParamUInt")
-  (docs "Emit need-data when queued bytes drops below this percent of max-bytes")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property current-level-bytes
-  (of-object "GstAppSrc")
-  (prop-type "GParamUInt64")
-  (docs "The number of currently queued bytes")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-
-;; From GstAudioRate
-
-(define-property in
-  (of-object "GstAudioRate")
-  (prop-type "GParamUInt64")
-  (docs "Number of input samples")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property out
-  (of-object "GstAudioRate")
-  (prop-type "GParamUInt64")
-  (docs "Number of output samples")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property add
-  (of-object "GstAudioRate")
-  (prop-type "GParamUInt64")
-  (docs "Number of added samples")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property drop
-  (of-object "GstAudioRate")
-  (prop-type "GParamUInt64")
-  (docs "Number of dropped samples")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property silent
-  (of-object "GstAudioRate")
-  (prop-type "GParamBoolean")
-  (docs "Don't emit notify for dropped and duplicated frames")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property tolerance
-  (of-object "GstAudioRate")
-  (prop-type "GParamUInt64")
-  (docs "Only act if timestamp jitter/imperfection exceeds indicated tolerance (ns)")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property skip-to-first
-  (of-object "GstAudioRate")
-  (prop-type "GParamBoolean")
-  (docs "Don't produce buffers before the first one we receive")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-
-;; From GstTheoraParse
-
-
-;; From GstTheoraEnc
-
-(define-property bitrate
-  (of-object "GstTheoraEnc")
-  (prop-type "GParamInt")
-  (docs "Compressed video bitrate (kbps)")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property quality
-  (of-object "GstTheoraEnc")
-  (prop-type "GParamInt")
-  (docs "Video quality")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property keyframe-auto
-  (of-object "GstTheoraEnc")
-  (prop-type "GParamBoolean")
-  (docs "Automatic keyframe detection")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property keyframe-freq
-  (of-object "GstTheoraEnc")
-  (prop-type "GParamInt")
-  (docs "Keyframe frequency")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property keyframe-force
-  (of-object "GstTheoraEnc")
-  (prop-type "GParamInt")
-  (docs "Force keyframe every N frames")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property speed-level
-  (of-object "GstTheoraEnc")
-  (prop-type "GParamInt")
-  (docs "Controls the amount of motion vector searching done while encoding")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property vp3-compatible
-  (of-object "GstTheoraEnc")
-  (prop-type "GParamBoolean")
-  (docs "Disables non-VP3 compatible features")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property drop-frames
-  (of-object "GstTheoraEnc")
-  (prop-type "GParamBoolean")
-  (docs "Allow or disallow frame dropping")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property cap-overflow
-  (of-object "GstTheoraEnc")
-  (prop-type "GParamBoolean")
-  (docs "Enable capping of bit reservoir overflows")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property cap-underflow
-  (of-object "GstTheoraEnc")
-  (prop-type "GParamBoolean")
-  (docs "Enable capping of bit reservoir underflows")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rate-buffer
-  (of-object "GstTheoraEnc")
-  (prop-type "GParamInt")
-  (docs "Sets the size of the rate control buffer, in units of frames.  The default value of 0 instructs the 
encoder to automatically select an appropriate value")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property multipass-cache-file
-  (of-object "GstTheoraEnc")
-  (prop-type "GParamString")
-  (docs "Multipass cache file")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property multipass-mode
-  (of-object "GstTheoraEnc")
-  (prop-type "GParamEnum")
-  (docs "Single pass or first/second pass")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-
-;; From GstTheoraDec
-
-
-;; From GstAdder
-
-(define-property caps
-  (of-object "GstAdder")
-  (prop-type "GParamBoxed")
-  (docs "Set target format for mixing (NULL means ANY). Setting this property takes a reference to the 
supplied GstCaps object.")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-
-;; From GstVisualoinksie
-
-
-;; From GstVisuallv_scope
-
-
-;; From GstVisuallv_analyzer
-
-
-;; From GstVisualjakdaw
-
-
-;; From GstVisualinfinite
-
-
-;; From GstVisualcorona
-
-
-;; From GstVisualbumpscope
-
-
-;; From GstVisualjess
-
-
-;; From GstIVorbisDec
-
-
-;; From GstXvImageSink
-
-(define-property contrast
-  (of-object "GstXvImageSink")
-  (prop-type "GParamInt")
-  (docs "The contrast of the video")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property brightness
-  (of-object "GstXvImageSink")
-  (prop-type "GParamInt")
-  (docs "The brightness of the video")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property hue
-  (of-object "GstXvImageSink")
-  (prop-type "GParamInt")
-  (docs "The hue of the video")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property saturation
-  (of-object "GstXvImageSink")
-  (prop-type "GParamInt")
-  (docs "The saturation of the video")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property display
-  (of-object "GstXvImageSink")
-  (prop-type "GParamString")
-  (docs "X Display name")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property synchronous
-  (of-object "GstXvImageSink")
-  (prop-type "GParamBoolean")
-  (docs "When enabled, runs the X display in synchronous mode. (unrelated to A/V sync, used only for 
debugging)")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property pixel-aspect-ratio
-  (of-object "GstXvImageSink")
-  (prop-type "GParamString")
-  (docs "The pixel aspect ratio of the device")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property force-aspect-ratio
-  (of-object "GstXvImageSink")
-  (prop-type "GParamBoolean")
-  (docs "When enabled, scaling will respect original aspect ratio")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property handle-events
-  (of-object "GstXvImageSink")
-  (prop-type "GParamBoolean")
-  (docs "When enabled, XEvents will be selected and handled")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property device
-  (of-object "GstXvImageSink")
-  (prop-type "GParamString")
-  (docs "The number of the video adaptor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property device-name
-  (of-object "GstXvImageSink")
-  (prop-type "GParamString")
-  (docs "The name of the video adaptor")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property handle-expose
-  (of-object "GstXvImageSink")
-  (prop-type "GParamBoolean")
-  (docs "When enabled, the current frame will always be drawn in response to X Expose events")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property double-buffer
-  (of-object "GstXvImageSink")
-  (prop-type "GParamBoolean")
-  (docs "Whether to double-buffer the output")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property autopaint-colorkey
-  (of-object "GstXvImageSink")
-  (prop-type "GParamBoolean")
-  (docs "Whether to autofill overlay with colorkey")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property colorkey
-  (of-object "GstXvImageSink")
-  (prop-type "GParamInt")
-  (docs "Color to use for the overlay mask")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property draw-borders
-  (of-object "GstXvImageSink")
-  (prop-type "GParamBoolean")
-  (docs "Draw black borders to fill unused area in force-aspect-ratio mode")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property window-width
-  (of-object "GstXvImageSink")
-  (prop-type "GParamUInt64")
-  (docs "Width of the window")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property window-height
-  (of-object "GstXvImageSink")
-  (prop-type "GParamUInt64")
-  (docs "Height of the window")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-
-;; From GstAlsaSink
-
-(define-property device
-  (of-object "GstAlsaSink")
-  (prop-type "GParamString")
-  (docs "ALSA device, as defined in an asound configuration file")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property device-name
-  (of-object "GstAlsaSink")
-  (prop-type "GParamString")
-  (docs "Human-readable name of the sound device")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property card-name
-  (of-object "GstAlsaSink")
-  (prop-type "GParamString")
-  (docs "Human-readable name of the sound card")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-
-;; From GstAlsaSrc
-
-(define-property device
-  (of-object "GstAlsaSrc")
-  (prop-type "GParamString")
-  (docs "ALSA device, as defined in an asound configuration file")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property device-name
-  (of-object "GstAlsaSrc")
-  (prop-type "GParamString")
-  (docs "Human-readable name of the sound device")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property card-name
-  (of-object "GstAlsaSrc")
-  (prop-type "GParamString")
-  (docs "Human-readable name of the sound card")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-
-;; From GstTextRender
-
-(define-property halignment
-  (of-object "GstTextRender")
-  (prop-type "GParamEnum")
-  (docs "Horizontal alignment of the text")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property valignment
-  (of-object "GstTextRender")
-  (prop-type "GParamEnum")
-  (docs "Vertical alignment of the text")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property line-alignment
-  (of-object "GstTextRender")
-  (prop-type "GParamEnum")
-  (docs "Alignment of text lines relative to each other.")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property xpad
-  (of-object "GstTextRender")
-  (prop-type "GParamInt")
-  (docs "Horizontal paddding when using left/right alignment")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property ypad
-  (of-object "GstTextRender")
-  (prop-type "GParamInt")
-  (docs "Vertical padding when using top/bottom alignment")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property font-desc
-  (of-object "GstTextRender")
-  (prop-type "GParamString")
-  (docs "Pango font description of font to be used for rendering. See documentation of 
pango_font_description_from_string for syntax.")
-  (readable #f)
-  (writable #t)
-  (construct-only #f)
-)
-
-
-;; From GstClockOverlay
-
-(define-property time-format
-  (of-object "GstClockOverlay")
-  (prop-type "GParamString")
-  (docs "Format to use for time and date value, as in strftime.")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-
-;; From GstTimeOverlay
-
-(define-property time-mode
-  (of-object "GstTimeOverlay")
-  (prop-type "GParamEnum")
-  (docs "What time to show")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-
-;; From GstTextOverlay
-
-
 ;; From GstURIDecodeBin
 
 (define-signal unknown-type
@@ -4692,21 +3405,387 @@
 )
 
 
-;; From GstAudioConvert
+;; From GstTextRender
 
-(define-property dithering
-  (of-object "GstAudioConvert")
+(define-property halignment
+  (of-object "GstTextRender")
   (prop-type "GParamEnum")
-  (docs "Selects between different dithering methods.")
+  (docs "Horizontal alignment of the text")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property noise-shaping
-  (of-object "GstAudioConvert")
+(define-property valignment
+  (of-object "GstTextRender")
   (prop-type "GParamEnum")
-  (docs "Selects between different noise shaping methods.")
+  (docs "Vertical alignment of the text")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property line-alignment
+  (of-object "GstTextRender")
+  (prop-type "GParamEnum")
+  (docs "Alignment of text lines relative to each other.")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property xpad
+  (of-object "GstTextRender")
+  (prop-type "GParamInt")
+  (docs "Horizontal paddding when using left/right alignment")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property ypad
+  (of-object "GstTextRender")
+  (prop-type "GParamInt")
+  (docs "Vertical padding when using top/bottom alignment")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property font-desc
+  (of-object "GstTextRender")
+  (prop-type "GParamString")
+  (docs "Pango font description of font to be used for rendering. See documentation of 
pango_font_description_from_string for syntax.")
+  (readable #f)
+  (writable #t)
+  (construct-only #f)
+)
+
+
+;; From GstClockOverlay
+
+(define-property time-format
+  (of-object "GstClockOverlay")
+  (prop-type "GParamString")
+  (docs "Format to use for time and date value, as in strftime.")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+
+;; From GstTimeOverlay
+
+(define-property time-mode
+  (of-object "GstTimeOverlay")
+  (prop-type "GParamEnum")
+  (docs "What time to show")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+
+;; From GstTextOverlay
+
+
+;; From GstAlsaMidiSrc
+
+(define-property ports
+  (of-object "GstAlsaMidiSrc")
+  (prop-type "GParamString")
+  (docs "Comma separated list of sequencer ports (e.g. client:port,...)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+
+;; From GstAlsaSink
+
+(define-property device
+  (of-object "GstAlsaSink")
+  (prop-type "GParamString")
+  (docs "ALSA device, as defined in an asound configuration file")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property device-name
+  (of-object "GstAlsaSink")
+  (prop-type "GParamString")
+  (docs "Human-readable name of the sound device")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
+
+(define-property card-name
+  (of-object "GstAlsaSink")
+  (prop-type "GParamString")
+  (docs "Human-readable name of the sound card")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
+
+
+;; From GstAlsaSrc
+
+(define-property device
+  (of-object "GstAlsaSrc")
+  (prop-type "GParamString")
+  (docs "ALSA device, as defined in an asound configuration file")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property device-name
+  (of-object "GstAlsaSrc")
+  (prop-type "GParamString")
+  (docs "Human-readable name of the sound device")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
+
+(define-property card-name
+  (of-object "GstAlsaSrc")
+  (prop-type "GParamString")
+  (docs "Human-readable name of the sound card")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
+
+
+;; From GstOggAviParse
+
+
+;; From GstOggParse
+
+
+;; From GstOgmTextParse
+
+
+;; From GstOgmVideoParse
+
+
+;; From GstOgmAudioParse
+
+
+;; From GstOggMux
+
+(define-property max-delay
+  (of-object "GstOggMux")
+  (prop-type "GParamUInt64")
+  (docs "Maximum delay in multiplexing streams")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property max-page-delay
+  (of-object "GstOggMux")
+  (prop-type "GParamUInt64")
+  (docs "Maximum delay for sending out a page")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property max-tolerance
+  (of-object "GstOggMux")
+  (prop-type "GParamUInt64")
+  (docs "Maximum timestamp difference for maintaining perfect granules")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property skeleton
+  (of-object "GstOggMux")
+  (prop-type "GParamBoolean")
+  (docs "Whether to include a Skeleton track")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+
+;; From GstOggDemux
+
+
+;; From GstVolume
+
+(define-property mute
+  (of-object "GstVolume")
+  (prop-type "GParamBoolean")
+  (docs "mute channel")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property volume
+  (of-object "GstVolume")
+  (prop-type "GParamDouble")
+  (docs "volume factor, 1.0=100%")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+
+;; From GstEncodeBin
+
+(define-signal request-pad
+  (of-object "GstEncodeBin")
+  (return-type "GstPad*")
+  (when "last")
+  (parameters
+    '("GstCaps*" "p0")
+  )
+)
+
+(define-signal request-profile-pad
+  (of-object "GstEncodeBin")
+  (return-type "GstPad*")
+  (when "last")
+  (parameters
+    '("const-gchar*" "p0")
+  )
+)
+
+(define-property profile
+  (of-object "GstEncodeBin")
+  (prop-type "GParamObject")
+  (docs "The GstEncodingProfile to use")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property queue-buffers-max
+  (of-object "GstEncodeBin")
+  (prop-type "GParamUInt")
+  (docs "Max. number of buffers in the queue (0=disable)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property queue-bytes-max
+  (of-object "GstEncodeBin")
+  (prop-type "GParamUInt")
+  (docs "Max. amount of data in the queue (bytes, 0=disable)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property queue-time-max
+  (of-object "GstEncodeBin")
+  (prop-type "GParamUInt64")
+  (docs "Max. amount of data in the queue (in ns, 0=disable)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property audio-jitter-tolerance
+  (of-object "GstEncodeBin")
+  (prop-type "GParamUInt64")
+  (docs "Amount of timestamp jitter/imperfection to allow on audio streams before inserting/dropping samples 
(ns)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property avoid-reencoding
+  (of-object "GstEncodeBin")
+  (prop-type "GParamBoolean")
+  (docs "Whether to re-encode portions of compatible video streams that lay on segment boundaries")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property flags
+  (of-object "GstEncodeBin")
+  (prop-type "GParamFlags")
+  (docs "Flags to control behaviour")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+
+;; From GstIVorbisDec
+
+
+;; From GstCdParanoiaSrc
+
+(define-signal transport-error
+  (of-object "GstCdParanoiaSrc")
+  (return-type "void")
+  (when "last")
+  (parameters
+    '("gint" "p0")
+  )
+)
+
+(define-signal uncorrected-error
+  (of-object "GstCdParanoiaSrc")
+  (return-type "void")
+  (when "last")
+  (parameters
+    '("gint" "p0")
+  )
+)
+
+(define-property read-speed
+  (of-object "GstCdParanoiaSrc")
+  (prop-type "GParamInt")
+  (docs "Read from device at specified speed (-1 and 0 = full speed)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property paranoia-mode
+  (of-object "GstCdParanoiaSrc")
+  (prop-type "GParamFlags")
+  (docs "Type of checking to perform")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property search-overlap
+  (of-object "GstCdParanoiaSrc")
+  (prop-type "GParamInt")
+  (docs "Force minimum overlap search during verification to n sectors")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property generic-device
+  (of-object "GstCdParanoiaSrc")
+  (prop-type "GParamString")
+  (docs "Use specified generic scsi device")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property cache-size
+  (of-object "GstCdParanoiaSrc")
+  (prop-type "GParamInt")
+  (docs "Set CD cache size to n sectors (-1 = auto)")
   (readable #t)
   (writable #t)
   (construct-only #f)
@@ -4878,78 +3957,843 @@
 )
 
 
-;; From GstOggAviParse
+;; From GstAudioRate
 
+(define-property in
+  (of-object "GstAudioRate")
+  (prop-type "GParamUInt64")
+  (docs "Number of input samples")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
 
-;; From GstOggParse
+(define-property out
+  (of-object "GstAudioRate")
+  (prop-type "GParamUInt64")
+  (docs "Number of output samples")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
 
+(define-property add
+  (of-object "GstAudioRate")
+  (prop-type "GParamUInt64")
+  (docs "Number of added samples")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
 
-;; From GstOgmTextParse
+(define-property drop
+  (of-object "GstAudioRate")
+  (prop-type "GParamUInt64")
+  (docs "Number of dropped samples")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
 
+(define-property silent
+  (of-object "GstAudioRate")
+  (prop-type "GParamBoolean")
+  (docs "Don't emit notify for dropped and duplicated frames")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
 
-;; From GstOgmVideoParse
+(define-property tolerance
+  (of-object "GstAudioRate")
+  (prop-type "GParamUInt64")
+  (docs "Only act if timestamp jitter/imperfection exceeds indicated tolerance (ns)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
 
+(define-property skip-to-first
+  (of-object "GstAudioRate")
+  (prop-type "GParamBoolean")
+  (docs "Don't produce buffers before the first one we receive")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
 
-;; From GstOgmAudioParse
 
+;; From GstTheoraParse
 
-;; From GstOggMux
 
-(define-property max-delay
-  (of-object "GstOggMux")
-  (prop-type "GParamUInt64")
-  (docs "Maximum delay in multiplexing streams")
+;; From GstTheoraEnc
+
+(define-property bitrate
+  (of-object "GstTheoraEnc")
+  (prop-type "GParamInt")
+  (docs "Compressed video bitrate (kbps)")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property max-page-delay
-  (of-object "GstOggMux")
+(define-property quality
+  (of-object "GstTheoraEnc")
+  (prop-type "GParamInt")
+  (docs "Video quality")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property keyframe-auto
+  (of-object "GstTheoraEnc")
+  (prop-type "GParamBoolean")
+  (docs "Automatic keyframe detection")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property keyframe-freq
+  (of-object "GstTheoraEnc")
+  (prop-type "GParamInt")
+  (docs "Keyframe frequency")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property keyframe-force
+  (of-object "GstTheoraEnc")
+  (prop-type "GParamInt")
+  (docs "Force keyframe every N frames")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property speed-level
+  (of-object "GstTheoraEnc")
+  (prop-type "GParamInt")
+  (docs "Controls the amount of motion vector searching done while encoding")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property vp3-compatible
+  (of-object "GstTheoraEnc")
+  (prop-type "GParamBoolean")
+  (docs "Disables non-VP3 compatible features")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property drop-frames
+  (of-object "GstTheoraEnc")
+  (prop-type "GParamBoolean")
+  (docs "Allow or disallow frame dropping")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property cap-overflow
+  (of-object "GstTheoraEnc")
+  (prop-type "GParamBoolean")
+  (docs "Enable capping of bit reservoir overflows")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property cap-underflow
+  (of-object "GstTheoraEnc")
+  (prop-type "GParamBoolean")
+  (docs "Enable capping of bit reservoir underflows")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property rate-buffer
+  (of-object "GstTheoraEnc")
+  (prop-type "GParamInt")
+  (docs "Sets the size of the rate control buffer, in units of frames.  The default value of 0 instructs the 
encoder to automatically select an appropriate value")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property multipass-cache-file
+  (of-object "GstTheoraEnc")
+  (prop-type "GParamString")
+  (docs "Multipass cache file")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property multipass-mode
+  (of-object "GstTheoraEnc")
+  (prop-type "GParamEnum")
+  (docs "Single pass or first/second pass")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+
+;; From GstTheoraDec
+
+
+;; From GstGioStreamSrc
+
+(define-property stream
+  (of-object "GstGioStreamSrc")
+  (prop-type "GParamObject")
+  (docs "Stream to read from")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+
+;; From GstGioStreamSink
+
+(define-property stream
+  (of-object "GstGioStreamSink")
+  (prop-type "GParamObject")
+  (docs "Stream to write to")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+
+;; From GstGioSrc
+
+(define-property location
+  (of-object "GstGioSrc")
+  (prop-type "GParamString")
+  (docs "URI location to read from")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property file
+  (of-object "GstGioSrc")
+  (prop-type "GParamObject")
+  (docs "GFile to read from")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+
+;; From GstGioSink
+
+(define-property location
+  (of-object "GstGioSink")
+  (prop-type "GParamString")
+  (docs "URI location to write to")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property file
+  (of-object "GstGioSink")
+  (prop-type "GParamObject")
+  (docs "GFile to write to")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+
+;; From GstAudioResample
+
+(define-property quality
+  (of-object "GstAudioResample")
+  (prop-type "GParamInt")
+  (docs "Resample quality with 0 being the lowest and 10 being the best")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property sinc-filter-mode
+  (of-object "GstAudioResample")
+  (prop-type "GParamEnum")
+  (docs "What sinc filter table mode to use")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property sinc-filter-auto-threshold
+  (of-object "GstAudioResample")
+  (prop-type "GParamUInt")
+  (docs "Memory usage threshold to use if sinc filter mode is AUTO, given in bytes")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+
+;; From GstAudioConvert
+
+(define-property dithering
+  (of-object "GstAudioConvert")
+  (prop-type "GParamEnum")
+  (docs "Selects between different dithering methods.")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property noise-shaping
+  (of-object "GstAudioConvert")
+  (prop-type "GParamEnum")
+  (docs "Selects between different noise shaping methods.")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+
+;; From GstVideoScale
+
+(define-property method
+  (of-object "GstVideoScale")
+  (prop-type "GParamEnum")
+  (docs "method")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property add-borders
+  (of-object "GstVideoScale")
+  (prop-type "GParamBoolean")
+  (docs "Add black borders if necessary to keep the display aspect ratio")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property sharpness
+  (of-object "GstVideoScale")
+  (prop-type "GParamDouble")
+  (docs "Sharpness of filter")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property sharpen
+  (of-object "GstVideoScale")
+  (prop-type "GParamDouble")
+  (docs "Sharpening")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property dither
+  (of-object "GstVideoScale")
+  (prop-type "GParamBoolean")
+  (docs "Add dither (only used for Lanczos method)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property envelope
+  (of-object "GstVideoScale")
+  (prop-type "GParamDouble")
+  (docs "Size of filter envelope")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property gamma-decode
+  (of-object "GstVideoScale")
+  (prop-type "GParamBoolean")
+  (docs "Decode gamma before scaling")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+
+;; From GstOpusDec
+
+(define-property use-inband-fec
+  (of-object "GstOpusDec")
+  (prop-type "GParamBoolean")
+  (docs "Use forward error correction if available (needs PLC enabled)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property apply-gain
+  (of-object "GstOpusDec")
+  (prop-type "GParamBoolean")
+  (docs "Apply gain if any is specified in the header")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+
+;; From GstOpusEnc
+
+(define-property audio-type
+  (of-object "GstOpusEnc")
+  (prop-type "GParamEnum")
+  (docs "What type of audio to optimize for")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property bitrate
+  (of-object "GstOpusEnc")
+  (prop-type "GParamInt")
+  (docs "Specify an encoding bit-rate (in bps).")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property bandwidth
+  (of-object "GstOpusEnc")
+  (prop-type "GParamEnum")
+  (docs "Audio Band Width")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property frame-size
+  (of-object "GstOpusEnc")
+  (prop-type "GParamEnum")
+  (docs "The duration of an audio frame, in ms")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property bitrate-type
+  (of-object "GstOpusEnc")
+  (prop-type "GParamEnum")
+  (docs "Bitrate type")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property complexity
+  (of-object "GstOpusEnc")
+  (prop-type "GParamInt")
+  (docs "Complexity")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property inband-fec
+  (of-object "GstOpusEnc")
+  (prop-type "GParamBoolean")
+  (docs "Enable forward error correction")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property dtx
+  (of-object "GstOpusEnc")
+  (prop-type "GParamBoolean")
+  (docs "DTX")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property packet-loss-percentage
+  (of-object "GstOpusEnc")
+  (prop-type "GParamInt")
+  (docs "Packet loss percentage")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property max-payload-size
+  (of-object "GstOpusEnc")
+  (prop-type "GParamUInt")
+  (docs "Maximum payload size in bytes")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+
+;; From GstXvImageSink
+
+(define-property contrast
+  (of-object "GstXvImageSink")
+  (prop-type "GParamInt")
+  (docs "The contrast of the video")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property brightness
+  (of-object "GstXvImageSink")
+  (prop-type "GParamInt")
+  (docs "The brightness of the video")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property hue
+  (of-object "GstXvImageSink")
+  (prop-type "GParamInt")
+  (docs "The hue of the video")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property saturation
+  (of-object "GstXvImageSink")
+  (prop-type "GParamInt")
+  (docs "The saturation of the video")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property display
+  (of-object "GstXvImageSink")
+  (prop-type "GParamString")
+  (docs "X Display name")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property synchronous
+  (of-object "GstXvImageSink")
+  (prop-type "GParamBoolean")
+  (docs "When enabled, runs the X display in synchronous mode. (unrelated to A/V sync, used only for 
debugging)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property pixel-aspect-ratio
+  (of-object "GstXvImageSink")
+  (prop-type "GParamString")
+  (docs "The pixel aspect ratio of the device")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property force-aspect-ratio
+  (of-object "GstXvImageSink")
+  (prop-type "GParamBoolean")
+  (docs "When enabled, scaling will respect original aspect ratio")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property handle-events
+  (of-object "GstXvImageSink")
+  (prop-type "GParamBoolean")
+  (docs "When enabled, XEvents will be selected and handled")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property device
+  (of-object "GstXvImageSink")
+  (prop-type "GParamString")
+  (docs "The number of the video adaptor")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property device-name
+  (of-object "GstXvImageSink")
+  (prop-type "GParamString")
+  (docs "The name of the video adaptor")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
+
+(define-property handle-expose
+  (of-object "GstXvImageSink")
+  (prop-type "GParamBoolean")
+  (docs "When enabled, the current frame will always be drawn in response to X Expose events")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property double-buffer
+  (of-object "GstXvImageSink")
+  (prop-type "GParamBoolean")
+  (docs "Whether to double-buffer the output")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property autopaint-colorkey
+  (of-object "GstXvImageSink")
+  (prop-type "GParamBoolean")
+  (docs "Whether to autofill overlay with colorkey")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property colorkey
+  (of-object "GstXvImageSink")
+  (prop-type "GParamInt")
+  (docs "Color to use for the overlay mask")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property draw-borders
+  (of-object "GstXvImageSink")
+  (prop-type "GParamBoolean")
+  (docs "Draw black borders to fill unused area in force-aspect-ratio mode")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property window-width
+  (of-object "GstXvImageSink")
   (prop-type "GParamUInt64")
-  (docs "Maximum delay for sending out a page")
+  (docs "Width of the window")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
+
+(define-property window-height
+  (of-object "GstXvImageSink")
+  (prop-type "GParamUInt64")
+  (docs "Height of the window")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
+
+
+;; From GstAdder
+
+(define-property caps
+  (of-object "GstAdder")
+  (prop-type "GParamBoxed")
+  (docs "Set target format for mixing (NULL means ANY). Setting this property takes a reference to the 
supplied GstCaps object.")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property max-tolerance
-  (of-object "GstOggMux")
+
+;; From GstVideoRate
+
+(define-property in
+  (of-object "GstVideoRate")
   (prop-type "GParamUInt64")
-  (docs "Maximum timestamp difference for maintaining perfect granules")
+  (docs "Number of input frames")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
+
+(define-property out
+  (of-object "GstVideoRate")
+  (prop-type "GParamUInt64")
+  (docs "Number of output frames")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
+
+(define-property duplicate
+  (of-object "GstVideoRate")
+  (prop-type "GParamUInt64")
+  (docs "Number of duplicated frames")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
+
+(define-property drop
+  (of-object "GstVideoRate")
+  (prop-type "GParamUInt64")
+  (docs "Number of dropped frames")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
+
+(define-property silent
+  (of-object "GstVideoRate")
+  (prop-type "GParamBoolean")
+  (docs "Don't emit notify for dropped and duplicated frames")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property skeleton
-  (of-object "GstOggMux")
+(define-property new-pref
+  (of-object "GstVideoRate")
+  (prop-type "GParamDouble")
+  (docs "Value indicating how much to prefer new frames (unused)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property skip-to-first
+  (of-object "GstVideoRate")
   (prop-type "GParamBoolean")
-  (docs "Whether to include a Skeleton track")
+  (docs "Don't produce buffers before the first one we receive")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
+(define-property drop-only
+  (of-object "GstVideoRate")
+  (prop-type "GParamBoolean")
+  (docs "Only drop frames, no duplicates are produced")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
 
-;; From GstOggDemux
+(define-property average-period
+  (of-object "GstVideoRate")
+  (prop-type "GParamUInt64")
+  (docs "Period over which to average the framerate (in ns) (0 = disabled)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property max-rate
+  (of-object "GstVideoRate")
+  (prop-type "GParamInt")
+  (docs "Maximum framerate allowed to pass through (in frames per second, implies drop-only)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
 
 
-;; From GstVolume
+;; From GstVideoConvert
 
-(define-property mute
-  (of-object "GstVolume")
-  (prop-type "GParamBoolean")
-  (docs "mute channel")
+(define-property dither
+  (of-object "GstVideoConvert")
+  (prop-type "GParamEnum")
+  (docs "Apply dithering while converting")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property volume
-  (of-object "GstVolume")
+(define-property dither-quantization
+  (of-object "GstVideoConvert")
+  (prop-type "GParamUInt")
+  (docs "Quantizer to use")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property chroma-resampler
+  (of-object "GstVideoConvert")
+  (prop-type "GParamEnum")
+  (docs "Chroma resampler method")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property alpha-mode
+  (of-object "GstVideoConvert")
+  (prop-type "GParamEnum")
+  (docs "Alpha Mode to use")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property alpha-value
+  (of-object "GstVideoConvert")
   (prop-type "GParamDouble")
-  (docs "volume factor, 1.0=100%")
+  (docs "Alpha Value to use")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property chroma-mode
+  (of-object "GstVideoConvert")
+  (prop-type "GParamEnum")
+  (docs "Chroma Resampling Mode")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property matrix-mode
+  (of-object "GstVideoConvert")
+  (prop-type "GParamEnum")
+  (docs "Matrix Conversion Mode")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property gamma-mode
+  (of-object "GstVideoConvert")
+  (prop-type "GParamEnum")
+  (docs "Gamma Conversion Mode")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property primaries-mode
+  (of-object "GstVideoConvert")
+  (prop-type "GParamEnum")
+  (docs "Primaries Conversion Mode")
   (readable #t)
   (writable #t)
   (construct-only #f)
@@ -4980,6 +4824,156 @@
 )
 
 
+;; From GstXImageSink
+
+(define-property display
+  (of-object "GstXImageSink")
+  (prop-type "GParamString")
+  (docs "X Display name")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property synchronous
+  (of-object "GstXImageSink")
+  (prop-type "GParamBoolean")
+  (docs "When enabled, runs the X display in synchronous mode. (unrelated to A/V sync, used only for 
debugging)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property pixel-aspect-ratio
+  (of-object "GstXImageSink")
+  (prop-type "GParamString")
+  (docs "The pixel aspect ratio of the device")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property force-aspect-ratio
+  (of-object "GstXImageSink")
+  (prop-type "GParamBoolean")
+  (docs "When enabled, reverse caps negotiation (scaling) will respect original aspect ratio")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property handle-events
+  (of-object "GstXImageSink")
+  (prop-type "GParamBoolean")
+  (docs "When enabled, XEvents will be selected and handled")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property handle-expose
+  (of-object "GstXImageSink")
+  (prop-type "GParamBoolean")
+  (docs "When enabled, the current frame will always be drawn in response to X Expose events")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property window-width
+  (of-object "GstXImageSink")
+  (prop-type "GParamUInt64")
+  (docs "Width of the window")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
+
+(define-property window-height
+  (of-object "GstXImageSink")
+  (prop-type "GParamUInt64")
+  (docs "Height of the window")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
+
+
+;; From GstAudioTestSrc
+
+(define-property samplesperbuffer
+  (of-object "GstAudioTestSrc")
+  (prop-type "GParamInt")
+  (docs "Number of samples in each outgoing buffer")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property wave
+  (of-object "GstAudioTestSrc")
+  (prop-type "GParamEnum")
+  (docs "Oscillator waveform")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property freq
+  (of-object "GstAudioTestSrc")
+  (prop-type "GParamDouble")
+  (docs "Frequency of test signal. The sample rate needs to be at least 4 times higher.")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property volume
+  (of-object "GstAudioTestSrc")
+  (prop-type "GParamDouble")
+  (docs "Volume of test signal")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property is-live
+  (of-object "GstAudioTestSrc")
+  (prop-type "GParamBoolean")
+  (docs "Whether to act as a live source")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property timestamp-offset
+  (of-object "GstAudioTestSrc")
+  (prop-type "GParamInt64")
+  (docs "An offset added to timestamps set on buffers (in ns)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property can-activate-push
+  (of-object "GstAudioTestSrc")
+  (prop-type "GParamBoolean")
+  (docs "Can activate in push mode")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property can-activate-pull
+  (of-object "GstAudioTestSrc")
+  (prop-type "GParamBoolean")
+  (docs "Can activate in pull mode")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+
 ;; From GstMultiSocketSink
 
 (define-signal add
@@ -5060,6 +5054,24 @@
   )
 )
 
+(define-property send-dispatched
+  (of-object "GstMultiSocketSink")
+  (prop-type "GParamBoolean")
+  (docs "If GstNetworkMessageDispatched events should be pushed")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property send-messages
+  (of-object "GstMultiSocketSink")
+  (prop-type "GParamBoolean")
+  (docs "If GstNetworkMessage events should be pushed")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
 
 ;; From GstMultiFdSink
 
@@ -5279,154 +5291,325 @@
   (construct-only #f)
 )
 
-
-;; From GstGioStreamSrc
-
-(define-property stream
-  (of-object "GstGioStreamSrc")
-  (prop-type "GParamObject")
-  (docs "Stream to read from")
+(define-property send-messages
+  (of-object "GstSocketSrc")
+  (prop-type "GParamBoolean")
+  (docs "If GstNetworkMessage events should be handled")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
 
-;; From GstGioStreamSink
+;; From GstAppSink
 
-(define-property stream
-  (of-object "GstGioStreamSink")
-  (prop-type "GParamObject")
-  (docs "Stream to write to")
+(define-signal eos
+  (of-object "GstAppSink")
+  (return-type "void")
+  (when "last")
+)
+
+(define-signal new-preroll
+  (of-object "GstAppSink")
+  (return-type "GstFlowReturn")
+  (when "last")
+)
+
+(define-signal new-sample
+  (of-object "GstAppSink")
+  (return-type "GstFlowReturn")
+  (when "last")
+)
+
+(define-signal pull-preroll
+  (of-object "GstAppSink")
+  (return-type "GstSample*")
+  (when "last")
+)
+
+(define-signal pull-sample
+  (of-object "GstAppSink")
+  (return-type "GstSample*")
+  (when "last")
+)
+
+(define-property caps
+  (of-object "GstAppSink")
+  (prop-type "GParamBoxed")
+  (docs "The allowed caps for the sink pad")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
+(define-property eos
+  (of-object "GstAppSink")
+  (prop-type "GParamBoolean")
+  (docs "Check if the sink is EOS or not started")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
 
-;; From GstGioSrc
+(define-property emit-signals
+  (of-object "GstAppSink")
+  (prop-type "GParamBoolean")
+  (docs "Emit new-preroll and new-sample signals")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
 
-(define-property location
-  (of-object "GstGioSrc")
-  (prop-type "GParamString")
-  (docs "URI location to read from")
+(define-property max-buffers
+  (of-object "GstAppSink")
+  (prop-type "GParamUInt")
+  (docs "The maximum number of buffers to queue internally (0 = unlimited)")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property file
-  (of-object "GstGioSrc")
-  (prop-type "GParamObject")
-  (docs "GFile to read from")
+(define-property drop
+  (of-object "GstAppSink")
+  (prop-type "GParamBoolean")
+  (docs "Drop old buffers when the buffer queue is filled")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
+(define-property wait-on-eos
+  (of-object "GstAppSink")
+  (prop-type "GParamBoolean")
+  (docs "Wait for all buffers to be processed after receiving an EOS")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
 
-;; From GstGioSink
 
-(define-property location
-  (of-object "GstGioSink")
-  (prop-type "GParamString")
-  (docs "URI location to write to")
+;; From GstAppSrc
+
+(define-signal need-data
+  (of-object "GstAppSrc")
+  (return-type "void")
+  (when "last")
+  (parameters
+    '("guint" "p0")
+  )
+)
+
+(define-signal enough-data
+  (of-object "GstAppSrc")
+  (return-type "void")
+  (when "last")
+)
+
+(define-signal seek-data
+  (of-object "GstAppSrc")
+  (return-type "gboolean")
+  (when "last")
+  (parameters
+    '("guint64" "p0")
+  )
+)
+
+(define-signal push-buffer
+  (of-object "GstAppSrc")
+  (return-type "GstFlowReturn")
+  (when "last")
+  (parameters
+    '("GstBuffer*" "p0")
+  )
+)
+
+(define-signal push-sample
+  (of-object "GstAppSrc")
+  (return-type "GstFlowReturn")
+  (when "last")
+  (parameters
+    '("GstSample*" "p0")
+  )
+)
+
+(define-signal end-of-stream
+  (of-object "GstAppSrc")
+  (return-type "GstFlowReturn")
+  (when "last")
+)
+
+(define-property caps
+  (of-object "GstAppSrc")
+  (prop-type "GParamBoxed")
+  (docs "The allowed caps for the src pad")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property file
-  (of-object "GstGioSink")
-  (prop-type "GParamObject")
-  (docs "GFile to write to")
+(define-property size
+  (of-object "GstAppSrc")
+  (prop-type "GParamInt64")
+  (docs "The size of the data stream in bytes (-1 if unknown)")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
+(define-property stream-type
+  (of-object "GstAppSrc")
+  (prop-type "GParamEnum")
+  (docs "the type of the stream")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
 
-;; From GstVideoConvert
+(define-property max-bytes
+  (of-object "GstAppSrc")
+  (prop-type "GParamUInt64")
+  (docs "The maximum number of bytes to queue internally (0 = unlimited)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
 
-(define-property dither
-  (of-object "GstVideoConvert")
+(define-property format
+  (of-object "GstAppSrc")
   (prop-type "GParamEnum")
-  (docs "Apply dithering while converting")
+  (docs "The format of the segment events and seek")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property dither-quantization
-  (of-object "GstVideoConvert")
-  (prop-type "GParamUInt")
-  (docs "Quantizer to use")
+(define-property block
+  (of-object "GstAppSrc")
+  (prop-type "GParamBoolean")
+  (docs "Block push-buffer when max-bytes are queued")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property chroma-resampler
-  (of-object "GstVideoConvert")
-  (prop-type "GParamEnum")
-  (docs "Chroma resampler method")
+(define-property is-live
+  (of-object "GstAppSrc")
+  (prop-type "GParamBoolean")
+  (docs "Whether to act as a live source")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property alpha-mode
-  (of-object "GstVideoConvert")
-  (prop-type "GParamEnum")
-  (docs "Alpha Mode to use")
+(define-property min-latency
+  (of-object "GstAppSrc")
+  (prop-type "GParamInt64")
+  (docs "The minimum latency (-1 = default)")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property alpha-value
-  (of-object "GstVideoConvert")
-  (prop-type "GParamDouble")
-  (docs "Alpha Value to use")
+(define-property max-latency
+  (of-object "GstAppSrc")
+  (prop-type "GParamInt64")
+  (docs "The maximum latency (-1 = unlimited)")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property chroma-mode
-  (of-object "GstVideoConvert")
-  (prop-type "GParamEnum")
-  (docs "Chroma Resampling Mode")
+(define-property emit-signals
+  (of-object "GstAppSrc")
+  (prop-type "GParamBoolean")
+  (docs "Emit need-data, enough-data and seek-data signals")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property matrix-mode
-  (of-object "GstVideoConvert")
-  (prop-type "GParamEnum")
-  (docs "Matrix Conversion Mode")
+(define-property min-percent
+  (of-object "GstAppSrc")
+  (prop-type "GParamUInt")
+  (docs "Emit need-data when queued bytes drops below this percent of max-bytes")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property gamma-mode
-  (of-object "GstVideoConvert")
-  (prop-type "GParamEnum")
-  (docs "Gamma Conversion Mode")
+(define-property current-level-bytes
+  (of-object "GstAppSrc")
+  (prop-type "GParamUInt64")
+  (docs "The number of currently queued bytes")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
+
+
+;; From GstVorbisTag
+
+
+;; From GstVorbisParse
+
+
+;; From GstVorbisDec
+
+
+;; From GstVorbisEnc
+
+(define-property max-bitrate
+  (of-object "GstVorbisEnc")
+  (prop-type "GParamInt")
+  (docs "Specify a maximum bitrate (in bps). Useful for streaming applications. (-1 == disabled)")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property primaries-mode
-  (of-object "GstVideoConvert")
-  (prop-type "GParamEnum")
-  (docs "Primaries Conversion Mode")
+(define-property bitrate
+  (of-object "GstVorbisEnc")
+  (prop-type "GParamInt")
+  (docs "Attempt to encode at a bitrate averaging this (in bps). This uses the bitrate management engine, 
and is not recommended for most users. Quality is a better alternative. (-1 == disabled)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property min-bitrate
+  (of-object "GstVorbisEnc")
+  (prop-type "GParamInt")
+  (docs "Specify a minimum bitrate (in bps). Useful for encoding for a fixed-size channel. (-1 == disabled)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property quality
+  (of-object "GstVorbisEnc")
+  (prop-type "GParamFloat")
+  (docs "Specify quality instead of specifying a particular bitrate.")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
+(define-property managed
+  (of-object "GstVorbisEnc")
+  (prop-type "GParamBoolean")
+  (docs "Enable bitrate management engine")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property last-message
+  (of-object "GstVorbisEnc")
+  (prop-type "GParamString")
+  (docs "The last status message")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
+
 
diff --git a/gstreamer/src/gst_signals.defs.patch b/gstreamer/src/gst_signals.defs.patch
index 7f987b2..5ba72ed 100644
--- a/gstreamer/src/gst_signals.defs.patch
+++ b/gstreamer/src/gst_signals.defs.patch
@@ -1,3 +1,5 @@
+diff --git a/gstreamer/src/gst_signals.defs b/gstreamer/src/gst_signals.defs
+index 9c84fe5..a0103e2 100644
 --- a/gstreamer/src/gst_signals.defs
 +++ b/gstreamer/src/gst_signals.defs
 @@ -179,7 +179,7 @@
@@ -17,11 +19,4 @@
 +    '("const-GError*" "p1")
    )
  )
-
-@@ -5049,4 +5049,4 @@
-   (when "last")
-   (parameters
--    '("gint" "p0")
-+    '("GSocket*" "p0")
-   )
- )
\ No newline at end of file
+ 
diff --git a/tools/gen_scripts/generate_methods.sh b/tools/gen_scripts/generate_methods.sh
index 34ae467..c18539b 100755
--- a/tools/gen_scripts/generate_methods.sh
+++ b/tools/gen_scripts/generate_methods.sh
@@ -28,9 +28,6 @@ $H2DEF_PY  "$PREFIX"/gst-libs/gst/{allocators,app,audio,cdda,fft,floatcast,\
 interfaces,netbuffer,pbutils,riff,rtp,rtsp,sdp,tag,video}/*.h >> \
 "$OUT_DIR/gst_methods.defs"
 
-#Patch generated file.
-patch  $OUT_DIR/gst_methods.defs $OUT_DIR/gst_methods.defs.patch
-
 OUT_DIR="$ROOT_DIR/gst-plugins-bad/src"
 PREFIX="$JHBUILD_SOURCES/gst-plugins-bad"
 $H2DEF_PY  "$PREFIX"/gst-libs/gst/{adaptivedemux,base,basecamerabinsrc,\
diff --git a/tools/m4/plugingen_gstreamermm.m4 b/tools/m4/plugingen_gstreamermm.m4
index 1fedbb5..7660626 100644
--- a/tools/m4/plugingen_gstreamermm.m4
+++ b/tools/m4/plugingen_gstreamermm.m4
@@ -14,6 +14,7 @@ _TRANSLATION(`GstAutoplugSelectResult',`Gst::AutoplugSelectResult',`Gst::Autoplu
 _TRANSLATION(`GstFlowReturn',`Gst::FlowReturn',`Gst::FlowReturn',,`<gstreamermm/pad.h>')
 
_TRANSLATION(`GstVideoMultiviewFramePacking',`Gst::VideoMultiviewFramePacking',`Gst::VideoMultiviewFramePacking',,`<gstreamermm/videoinfo.h>')
 
_TRANSLATION(`GstVideoMultiviewFlags',`Gst::VideoMultiviewFlags',`Gst::VideoMultiviewFlags',,`<gstreamermm/videoinfo.h>')
+_TRANSLATION(`GstBufferFlags',`Gst::BufferFlags',`Gst::BufferFlags',,`<gstreamermm/buffer.h>')
 
 dnl giomm
 _TRANSLATION(`GFile*',`Gio::File',`const 
Glib::RefPtr<Gio::File>&',`Glib::RefPtr<Gio::File>',`<giomm/file.h>')



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]